Microsoft

индекс
86,66

За кулисами Hotmail

imageПривет, меня зовут Артур де Хаан, и я отвечаю за тестирование и системное проектирование в Windows Live. Я бы хотел дать вам заглянуть за кулисы Hotmail, и рассказать вам больше о том, что необходимо для создания, развертывания и запуска Windows Live Hotmail в таких глобальных масштабах.

Хранение вашей почты и данных (и наших собственных данных) на наших серверах это большая ответственность и мы очень большое внимание уделяем качеству, производительности и надежности. Мы делаем значительные инвестиции в область инженерии и инфраструктуры для того, чтобы Hotmail работал 24 часа в сутки, изо дня в день, из года в год. Вы редко будете слышать об этих усилиях, вы будете слышать о них в тех редких случаях, когда что-то пойдет не так, и наш сервис столкнётся с проблемой.

Hotmail представляет собой гигантскую службу во всех измерениях. Вот некоторые из основных:
  • Наш сервис присутствует по всему миру. Hotmail поставляется на 59 региональных рынка, на 36 языках
  • Мы предоставляем свыше 1.3 миллиарда почтовых ящиков (некоторые пользователи имеют несколько ящиков)
  • Более 350 миллионов людей активно используют Hotmail ежемесячно (по данным comScore, август 2009)
  • Мы обрабатываем свыше 3 миллиардов сообщений в день и фильтруем более 1 миллиарда спамерских писем
  • Объем данных растет на 2 петабайта в месяц
  • В настоящий момент у нас хранится свыше 155 петабайт данных(70% этого объема вложения, обычно фотографии)
  • У нас крупнейшая в мире база данных SQL Server 2008, мы контролируем и управляем многими тысячами Sql серверов

Вы можете представить, что пользовательских интерфейс Hotmail это лишь верхушка айсберга, большинство инноваций происходят внутри и не видны для пользователя. В этой заметке я дам высокоуровневый обзор архитектуры всей системы. Мы сделаем более глубокое погружение в некоторые особенности в последующих постах (от переводчика: если данная статья понравится сообществу, я могу перевести эти последующие посты)

Архитектура


Hotmail и другие сервисы Windows Live размещены в нескольких дата центрах по всему миру. Hotmail организуется в логические масштабируемые элементы – кластеры. Кроме того, у нас есть инфраструктура, которая распределяет нагрузку между кластерами в каждом дата центре:

  • Сервера для обработки входящей и исходящей почты
  • Спам фильтры (от переводчика: если данная статья понравится сообществу, я могу перевести блог пост о спам фильтрах в Hotmail)
  • Хранилище пользовательских данных и данных полученных с наших мониторинговых систем
  • Инфраструктура мониторинга и реагирования на инциденты
  • Инфраструктура для управления автоматизированным развертыванием кода и настройки обновлений


На одном кластере расположено несколько миллионов пользователей (как много зависит от возраста аппаратного обеспечения) и автономный набор серверов, включая:

  • Frontend серверы – серверы, которые проверяют сообщение на наличие вирусов и размещают код, который отвечает за общение с вашим браузером или почтовым клиентом, используя такие протоколы как POP3 и DeltaSync
  • Backend серверы – SQL серверы, файловые серверы, фильтры спама, хранилище данных мониторинга и спам фильтров, каталог агентов и серверов, обработка входящей и исходящей почты
  • Балансировщик нагрузки – аппаратное и программное обеспечение, используемое для равномерного распределения нагрузки для повышения общей производительности.


Предотвращение сбоев в работе и потери данных, является нашим наивысшим приоритетом, и мы принимаем все меры предосторожности, чтобы этого не случилось. Мы спроектировали наш сервис так, чтобы эффективно обрабатывать сбои, учитывая наше предположение о том, что все, что может дать сбой сделает это со временем. Мы сталкиваемся со сбоями в оборудовании, среди сотен тысяч жестких дисков, которые мы используем, находятся те, которые дают сбой. К счастью, из-за особенностей архитектуры и своевременной обработки сбоев, клиенты редко заметят такого рода сбой.

Вот несколько способов предотвращения сбоев:

  • Избыточность – мы используем сочетание массивов хранилищ SQL Server для сохранности ваших данных. Мы пользуемся активной и пассивной отказоустойчивой технологией. Это необычный способ сказать, что у нас есть много серверов и копии ваших данных, которые постоянно синхронизируются. В целом мы храним 4 копии ваших данных на разных дисках и серверах, чтобы минимизировать вероятность потери данных в случае ошибки оборудования.
  • Еще одно преимущество данной архитектуры в том, что мы можем производить плановое обслуживание, такое как развертывание обновлений или исправление безопасности, без простоя.
  • Мониторинг — у нас есть разветвленная система мониторинга программного и аппаратного обеспечения. Тысячи серверов наблюдают за состоянием “здоровья” сервиса, транзакциями, общей производительностью системы. Поскольку наш сервис настолько огромен, мы отслеживаем производительность и uptime в совокупности, а также на уровне кластера и по географическому положению. Мы хотим быть уверены, что ваш персональный опыт вернется назад к нам и не потеряется, когда мы будем смотреть общие показатели системы. Мы заботимся о каждом из пользователей. В будущих постах мы поговорим больше о мониторинге и производительности.
  • Группа реагирования – у нас есть круглосуточная группа реагирования, которая следит за нашей глобальной системой мониторинга и принимает меры всякий раз, когда есть проблема. У нас есть процесс расширения, которым могут заниматься наши инженеры в течение нескольких минут в случае необходимости.


Технологический процесс



Я рассказал немного о нашей архитектуре, и тех шагах, которые мы предпринимаем, чтобы обеспечить бесперебойное обслуживание. Однако наш сервис не статичен; помимо роста за счет использования, мы регулярно вносим обновления. Таким образом, наши технологические процессы также важны, как и архитектура, чтобы обеспечить вас бесперебойной услугой. Мы соблюдаем определенные меры предосторожности при развертывании нового кода, от патчей и небольших обновлений до крупных релизов.

Тестирование и развертывание. Для каждого разработчика у нас есть инженер по тестированию, который работает рука об руку с разработчиком, что бы внести свой вклад разработку и написание спецификаций, создание инфраструктуры тестирования, написание автоматических тестов для проверки новых возможностей, обеспечение качества. Когда мы говорим о качестве, мы говорим не просто о стабильности и надежности, а также о простоте использования, производительности, безопасности, доступности (для пользователей с ограниченными возможностями), конфиденциальности, масштабируемости и функциональности во всех браузерах.

Так как мы являемся бесплатной службой, финансируемой за счет рекламы, мы должны быть высокоэффективными. Поэтому развертывание, настройка и сопровождение наших систем является высоко автоматизированным процессом. Автоматизация также снижает риск человеческой ошибки.

Развертывание кода и изменение управления. У нас тысячи серверов в тестовой лаборатории, где мы развертываем и тестируем код, задолго до того, как он попадет клиенту. В дата центрах у нас так же есть кластеры, специально зарезервированные для тестирования “dogfood” и бета версий на заключительном этапе разработки. Мы проверяем все изменения в наших лабораториях, будь то обновление аппаратного или программного обеспечения, или исправление безопасности.

Когда все инженерные группы подпишут релиз (включая тестеров и инженеров), мы начинаем постепенное развертывание обновлений на кластерах по всему миру. Обычно мы это делаем в течение нескольких месяцев, не только потому, что это занимает много времени, но и чтобы убедится, что это не влияет на качество и производительность службы.

Также мы можем включать или выключать некоторые возможности по-отдельности. Иногда мы развертываем обновления, но откладываем их включение. В редких случаях мы блокируем некоторые возможности по соображениям безопасности или производительности.

Заключение



Этот топик должен дать вам понимание тех масштабов разработки, которые подразумевает развитие Hotmail. Мы посвящаем себя техническому превосходству и непрерывным усовершенствованиям наших служб для вас. Мы продолжаем изучать, как растет служба, и прислушиваемся к вашим отзывам, серьезно, вы можете оставить мне здесь комментарии с вашими мыслями и вопросами. Я страстный поклонник наших сервисов, как и вся команда Windows Live – мы можем быть инженерами, но мы используем службы сами, наряду с миллионами наших пользователей.
+18
15 января 2010, 08:04
14

комментарии (44)

–1
BReal #
А вы стали страстным поклонником сервисов microsoft (в частности hotmail) когда устроились туда работать или раньше? \просто любопытно\
+6
awhiler #
задайте этот вопрос автору, если несложно
это перевод
–4
BReal #
Оу… А я не вкурил :)
+4
EVEN #
108,5 петабайт фотографий — впечатляет. И наверное 108 петабайт лежат мертвым грузом.
–10
ApocalipssiS #
даже не знаю, «Окошечный» сервис… что-то внутри меня съеживается слегка и сомневается :3
+2
zerkms #
хайлоады разные нужны, хайлоады разные важны
+10
romx #
«Только дурак не меняет своих убеждений» приписывается У.Черчиллю

Может пришла пора?
0
ApocalipssiS #
нет, не пришла еще пора (с) мои слова, ибо легко говорить чужими…
ты сам пользуешься этим сервисом?
–2
ApocalipssiS #
а что минусуете, сколько из вас минусовавших, пользуется этим сервисом?
0
danilissimus #
> :3
О БОЖЕ, ЛЕВ ЗА КОМПОМ! СКОРЕЕ ВЫТАСКИВАЕМ ИНЕТНЫЙ КАБЕЛЬ!
0
ApocalipssiS #
хорошо, вы меня убедили, я был неправ :)
–1
Kind #
Интересная статья, спасибо за перевод!
+4
Svarog #
Больше похожа на рекламный проспект.
+1
pswd #
Вчера наконецто дошли руки до моей почты на hotmail.
Первое впечатление очень понравилось. + понравилось приложение ПОчта Windows Live которая предоставляет удобный и не нагруженный интерфейс для работы с почтой :)
Так что теперь склоняюсь с полного ухода из Гугл почты :)
0
XaocCPS #
а вы знаете что каждый пользователь hotmail (а точнее LiveID) получает 25 гигабайт бесплатного облачного хранилища на SkyDrive для любых данных?
0
aurelis #
Кстати, увеличить объем возможно?
0
olegafx #
У SkyDrive — нет, у Hotmail — да (бесплатно)
0
AndrewTishkin #
Зато можно создать второй аккаунт и объединить их общее свободное пространство (один раз делал, потом поменял всё обратно, так что детали помню смутно :)
+1
olegafx #
Объединить два аккаунта в один — нельзя. Можно только прикрепить один аккаунт к другому для быстрого переключения между ними.
0
olegafx #
И для самой почты можно получить 25GB
0
LitrKonyaka #
hotmail не имеет к этому никакого отношения ) Skydrive, LiveMesh и тд доступны по liveID
+4
pepo #
отличный и удобный сервис. каждый пользуется тем что ему удобнее в работе. кто-то любит то что делает Google, кто-то то что делает Microsoft. Я считаю что глупо кричать или поливать грязью ту или другую сторону которая выбрала данный сервис. Каждый пользуется тем что удволетворяет его потребностям.
+1
Aldanko #
Интересно, спасибо :) Даешь статью про спам!
+3
Marsikus #
Три года пользуюсь их почтой. Что характерно — спама очень и очень мало, это не какой-нибудь мэйл.ру.
+3
pswd #
ДА кстати ждем статьи о спаме и новых новостей о HotMail
+3
finita #
тоже недавно начал использовать почту на hotmail.com. впринципе супер (согласен с Marsikus, спама почти нет). только пока не радует 2 вещи:
1. не стабильно работает почтовый клиент.
2. мелочь, но все же. Если работать в почте через браузер, то криво работает кнопка возврата на предыдущую страничку(т.е. если из входящих зайти в письмо, а потом нажать «возврат», то возвращает в самое неожиданное место :-) )

а если говорить об остальных сервисах, то считаю, что google в них нет равных.
НЛО прилетело и опубликовало эту надпись здесь
0
finita #
Движок работает медленно! на win7 х64 он у меня иногда подвисает.
и если уж вопрос зашел о клиенте, то меня просто убивает что он не сворачивается в «трей»

Я так и не понял зачем он нужен, если есть outlook того же Microsoft'а!
НЛО прилетело и опубликовало эту надпись здесь
0
kai #
Пусть лучше скажут, сколько стоят лицензии на все это хозяйство =) Ну, я понимаю, что своим бесплатно, но все-же интересно… ))))
+2
Matolch #
Епт, веб-интерфейс красиво сделан, но добавлять рекламу в конец каждого письма — буээ.
0
vitaly44 #
В почтовом клиенте не добавляется реклама. Hotmail ведь должен на чем-то зарабатывать и как-то окупаться — это реклама.
0
amirul #
Ни о каком заработке речи не идет. Live подсовывает только рекламу самого себя. При этом я вообще не видел сторонней рекламы (у гугла она есть, хотя лично меня и нисколько не напрягает).

Это напрягает не больше, чем какой нибудь «Послано при помощи iPhone».

А вот единственный существенный недостаток веб-интерфейса Live Mail — принципиальное отсутствие https для просмотра почты. Таким образом я не могу привязать этот ящик к sensitive информации (банковские аккаунты, paypal и пр.) — да я параноик :-)
+2
CBuH #
Да, хотелось бы про спам фильтры почитать на руском
0
aleXoid #
Мне нравится сервисы Live. Неплохой веб-интерфейс, но я им все-равно не пользуюсь =) Сейчас решил провести эксперимент дома, поставил на media-компьютер чистую Win7, набор кодеков, программу для TV-тюнера и пакет Live + антивирус Live Essentials. Все драйвера сами поднялись… Уже два месяца пользуюсь, пока не возникло желания даже Total Commander поставить.

Что интересно, на работе поставил на Outlook — Outlook Connector + тоже на ноутбуке. Теперь у меня единое планирование задач, почта, адресная книга. Пока не синхронизируются задачи и заметки, но надеюсь, это вопрос самого ближайшего будущего.
0
moscow_beast #
Меня сервисы Live радуют тем, что (хотя это и было-бы в их духе) в MS не борзеют как а AOL по поводу альтернативных клиентов, и я могу отлично пользоваться своим Live-акаунтом работая в Ubuntu :)
+3
Chikey #
1. много рекламы
2. ajax в 2 раза хуже чем в gmail
3. нету хэштэгов — кнопка назад не работает правильно
4. У вас недавно сперли все адреса — пороли, думаете хочется рисковать?
да и @gmail покороче @hotmail
+4
ahromenko #
@live короче @gmail
+2
lol2Fast4U #
да это семечки.
Hotmail старается быть похожим на Gmail, но у него это абсолютно не получается. Зачем-то сделали две поисковые строки и куда-то убрали кнопку «назад» в письме/папке. Кнопки все сливаются вообще. Чтобы обновить, надо кликать по «входящим», нету ссылки «обновить». И все квадратное.
Единственное у Live полезное — My Phone.

P.S. Почему в MS разговаривают на каком-то анальном диалекте русского? «нежелательная почта» — ну зачем так удлинять «спам»? А с каких пор «аккаунт» стал «идентификатором»?
+1
mstyura #
У Майкрософта есть голосарии по переводу, можно собратся большой компанией и предложить переводить нежелательную почту как спам. В прошлый раз нежелание такого перевода объяснили тем, что спам это чья-то торговая марка.
0
egorF #
большие корпорации в силу определенных объективных причин не могут разговаривать на человеческом языке. Поэтому-то и «страшно далеки они от народа».
НЛО прилетело и опубликовало эту надпись здесь
–2
NightWriter #
Мы предоставляем свыше 1.3 миллиарда почтовых ящиков (некоторые пользователи имеют несколько ящиков)
_______
Из них мы предоставляем свыше 1 миллиарда почтовых ящиков для спам-роботов (некоторые роботы имеют несколько ящиков)
+1
RNZ #
>«Так как мы являемся бесплатной службой, финансируемой за счет рекламы, мы должны быть высокоэффективными.»

Перефразирую фразу с пропеллерам — «Знаешь за счет чего ты выжил? Ты заставляешь людей нуждаться в тебе. Ты заставляешь их нуждаться в том, что имеешь и потом им уже больше некуда обращаться.»:
«Знаешь за счет чего ты выжил?» Ты ни копейки не платил за договор на использование m$ windows и m$ sql server на своих гетерогенных кластерах.

Мне почему то думается что hotmail убыточен и реклама его не окупает, но это мне так думается…

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.