Реклама 300×250
Почему 28 ноября не работал WhatsApp
Обновление сервиса было запланировано заранее и проводилось в несколько этапов. Но на первый план вышла именно первая часть — исправление ошибок во время её выполнения. Это привело к тому, что более миллиона пользователей по всему миру столкнулись с проблемой невозможности использования популярного мессенджера. Впрочем, причина вполне понятна: разработчики решили сделать одно дело за раз, чтобы минимизировать риски возникновения ещё больших проблем.
За последний год мы стали свидетелями множества технических работ различных масштабов. Некоторые из них были плановыми и проводились без видимых помех для обычных пользователей; другие же вызывали серьёзные неудобства. Одним из самых масштабных подобных инцидентов стала потеря доступа миллионов людей к «Яндекс Почте» летом текущего года. Тогда причиной произошедшего был неудачный переход компании на новую систему хранения данных. Однако пользователи смогли восстановить доступ ко своим письмам уже через сутки после завершения техработ. И это стало своего рода уроком для всех IT-компаний о том, как следует планировать подобные мероприятия, а также проводить их поэтапно, вместо того чтобы пытаться всё вынести разом.
Отметим, что такая ситуация была бы крайне неприемлемой для критически важной инфраструктуры государства или даже крупных организаций вроде Amazon, Microsoft, Google и Apple. Воспользовавшись опытом предыдущих лет, они стараются максимально обезопасить себя и своих клиентов перед началом каких-либо важных системных изменений. Тем интереснее наблюдать ситуации, когда крупные технологические гиганты допускают ошибки в ходе проведения технических работ. Поэтому рассмотрим подробнее случай с WhatsApp.
Что произошло?
Накануне вечером (по московскому времени) один из крупнейших мировых мессенджеров перенёс своё программное обеспечение на новое оборудование и обновил клиентские приложения под Android, iOS и Windows Phone. Процедура прошла успешно, однако возникла одна проблема: система внезапно зависла и отказалась работать. Более миллион человек со всего мира обнаружили, что отправлять сообщения другим пользователям просто невозможно. Кроме этого у многих не загружался список контактов, обновляемые статусы отображали некорректную информацию, возникали трудности с настройками уведомлений и многое другое. Несколько часов спустя проблему удалось устранить, но только после многочисленных жалоб и возмущений со стороны разочарованных пользователей.
Почему так случилось?
Ответственность за случившееся взял представитель службы поддержки WhatsApp Дэниел Грейси. Он признал тот факт, что компания допустила ошибку и выразил сожаления по поводу неё. Также он рассказал, почему нельзя было избежать этой неприятности. Всё сводится к решению провести техобработку сразу двух компонентов системы за одну ночь: серверного кода и мобильных приложений. Если бы эти две операции проводились отдельно друг от друга, то вероятность провала уменьшилась бы значительно. К сожалению, команда разработки решила иначе и попыталась сделать всё одновременно. Так получившийся сбой можно сравнять с ситуацией, если кто-то решит заменить мотор автомобиля в движении — результат предсказуемый.
Учитывая все вышеизложенное, возникает вопрос: какие действия необходимо предпринимать крупным IT-организациям, чтобы исключить повторение аналогичной ситуации в будущем? Вот три простых совета, которые могут помочь:
- Планировать проведение технической обработки каждого компонента отдельного ПО как самостоятельный проект. Для его реализации выделяется определённая группа специалистов и необходимый бюджет. После успешного тестирования и внедрения одного модуля запускается следующий. Этот процесс повторяется до достижения поставленной цели. Такой подход позволит контролировать каждый шаг проекта и снизить риск возможных неполадок.
- Выбирать оптимальное время для начала и окончания технической работы, принимая во внимание активность аудитории. Например, если большинство ваших пользователей активно пользуются вашим продуктом утром и вечером, стоит избегать переносов основного функционала вашего продукта на промежуток между этими периодами. Избежать массовой потери клиентов проще, чем вернуть их обратно.
- Тестирование новых функций должно проходить постепенно, начиная с ограниченной группы пользователей, которая может дать обратную связь. Только после тщательной проверки работоспособности нового инструмента среди бета-тестеров его безопасность будет подтверждена, прежде чем всем остальным клиентам станет доступно полноценное использование. Таким образом, вам удастся предупредить возможные сбои и недовольство клиентов.
Кстати, последние два пункта актуальны не только для компаний, работающих над