Почему сайт Мерчиума не работал в воскресенье?

Почему сайт Мерчиума не работал в воскресенье?

Здравствуйте,

В воскресенье, 23 ноября, на нашем сервере произошел инцидент, из-за которого сайт Мерчиума был недоступен бо́льшую часть дня — с 6:30 до 19:30.

Нам хотелось бы рассказать вам немного подробнее о том, что произошло, извиниться и заверить, что мы приложим все усилия, что в будущем подобные происшествия больше не случались.

Внимание, дальше будет информация технического характера.

Дело в том, что в сборке nginx, установленной на сервере, был баг, из-за которого не удалялись созданные веб-сервером массивы семафоров. Они копились на протяжении нескольких месяцев, пока не был достигнут системный лимит.

После этого любые операции, использующие эти семафоры, начинали возвращать ошибку. В нашем случае это привело к отказу веб-сервера Apache.

Проблема была исправлена через пять минут после обнаружения. Неиспользуемые массивы семафоров были удалены, а модуль-виновник утечки был найден и удален из сборки веб-сервера.

Что же мешало нам обнаружить проблему в 6:30 и исправить ее к 6:35?

У нашего системного администратора, естественно, настроен мониторинг всех наших сервисов. Если что-то идет не так, он сразу получает уведомление. (Это не мешает ему высыпаться исключительно потому, что он — настоящий профессионал, и у него все работает как часы.)

К сожалению, именно ту область, которая дала трещину, мониторинг не покрывал полностью. Закон Мерфи в действии!

Таким образом, до самого вечера о проблеме никто не знал.

Сразу после разрешения проблемы, мы, конечно, усовершенствовали и нашу систему мониторинга, чтобы в будущем не проморгать такие инциденты.


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

Актуальный статус нашего сервиса все всегда можете узнать по адресу status.merchium.ru. Кроме того, мы всегда делимся важными новостями в Твиттере и Фейсбуке. Подписывайтесь!