Сегодня 21 мая 2026
18+
MWC 2018 2018 Computex IFA 2018
реклама
Новости Software

Программисты «Яндекса» чуть не лишили всех точного времени

Из-за ошибки, допущенной при разработке обновления прошивки для умных колонок «Яндекс Станция», образовалась аномально высокая загрузка на NTP-серверы (Network Time Protocol) в российском сегменте интернета — эти ресурсы используются для синхронизации времени. Компания обнаружила ошибку далеко не сразу, но перечислила меры, которые не допустят её повторения.

 Источник изображения: yandex.ru

Источник изображений: «Яндекс»

В середине октября один из добровольцев, который организовал NTP-сервер на своём домашнем маршрутизаторе, обнаружил, что канал устройства забит запросами. Обновление прошивки и перезагрузка проблемы не решили, но она исчезла после отключения NTP. Далее выяснилось, что с середины октября прекратили работу 120 из 140 российских NTP-серверов. Доброволец призвал сообщество «Хабра» в качестве временной меры запустить у отечественных провайдеров NTP-серверы на виртуальных машинах за минимальную плату — помимо рядовых пользователей, откликнулся крупный облачный оператор, который выделил сразу 30 виртуальных машин.

Виновником оказалась компания «Яндекс», которая в середине октября начала развёртывать новую прошивку для умных колонок серии «Станция». Прошивка этих устройств содержит стандартный клиент синхронизации времени. В штатном режиме она производится каждые пять часов, но в случае неудачной попытки повторная предпринимается через пять секунд. Из-за ошибки в одном из связанных с клиентом модулей все устройства с обновлённой прошивкой начали вне зависимости от результата предыдущей попытки синхронизировать время каждые пять секунд — напомним, только за первые девять месяцев 2024 года было продано, по оценкам, около 3 млн «Яндекс Станций».

На начальном этапе «Яндекс» развернул прошивку на 10 % устройств — это стандартная мера для того, чтобы выявлять ошибки на ранних стадиях. Но в стандартной схеме обнаружения ошибок на тот момент отсутствовала метрика NTP-запросов, и к 24 октября прошивка распространилась на 100 % устройств. Первые жалобы на избыточное число NTP-запросов начали поступать 10 ноября — обычно этот симптом объясняется проблемами на стороне пользователя, и из-за небольшого объёма жалоб приоритет у проблемы был невысоким. Ошибку удалось обнаружить лишь 20 ноября — к этому моменту её исправили и начали готовить новый выход прошивки.

Но тянуть время уже было нельзя, потому что к выходным 23 и 24 ноября в Сети оставалось всего четыре сервера. Поэтому в качестве временной меры «Яндекс» выпустил хотфикс — экстренное обновление, которое увеличивало период обращения с 5 до 600 секунд. Нагрузка на NTP-серверы, таким образом, снижалась в 120 раз, но если какая-то из «Яндекс Станций» после включения не могла синхронизировать время с первой попытки, то в последующие 10 минут её связанные со временем функции оказывались недоступными. Это помогло стабилизировать ситуацию — к тому моменту начали запускать NTP-серверы члены сообщества «Хабра».

Чтобы не допустить повторения инцидента в дальнейшем, в «Яндексе» решили принять несколько мер:

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

Источник:

Если вы заметили ошибку — выделите ее мышью и нажмите CTRL+ENTER.
Материалы по теме

window-new
Soft
Hard
Тренды 🔥
Postgres Professional представила СУБД Postgres Pro AXE для гибридных нагрузок 2 ч.
Цукерберг успокоил сотрудников Meta: новых массовых увольнений в этом году не ожидается 2 ч.
Microsoft позвала звёздного аналитика Мэттью Болла спасать стратегию Xbox 3 ч.
«Очередной шедевр Amanita»: авангардная головоломка Phonopolis от авторов Machinarium и Samorost стартовала в Steam с рейтингом 96 % 4 ч.
Embracer подтвердила сроки релиза следующей игры Warhorse Studios — новая Kingdom Come может выйти уже в 2027 году 5 ч.
Хакеры слили данные клиентов Trump Mobile и раскрыли реальные продажи смартфона T1 6 ч.
Сетевой боевик Spellcasters Chronicles от авторов Detroit: Become Human закроется спустя четыре месяца раннего доступа, зато у Star Wars Eclipse всё хорошо 6 ч.
Apple похвалилась, что пресекла мошеннические транзакции на $11,2 млрд за шесть лет и на этом не остановится 7 ч.
Owlcat раскрыла статистику участников «беты» The Expanse: Osiris Reborn и рассказала, как будет улучшать игру после критики фанатов 7 ч.
«Ваше мнение имеет значение»: разработчики Subnautica 2 помогут игрокам защититься от рыб, но оружие добавлять не будут 8 ч.
Первые тесты Lisuan LX 7G100 показали: Китай научился делать GPU для современных игр, но пока небыстрые 3 ч.
Samsung увернулась от забастовки, способной взвинтить цены на память — рабочие добились повышения премий 3 ч.
AM4 жив! Юбилейный Ryzen 7 5800X3D AM4 10th Anniversary Edition появился в продаже в Индии за $310 4 ч.
Китайские учёные впервые в истории запитали несколько движущихся по воздуху целей микроволновым лучом 4 ч.
Founders Edition, но не от Nvidia: китайская Lisuan Tech показала игровую видеокарту LX 7G100 в эталонном исполнении 4 ч.
Alibaba представила ИИ-ускоритель Zhenwu M890, который втрое быстрее предшественника 6 ч.
Суперкомпьютер по подписке: Bull предоставила Airbus инфраструктуру HPC-as-a-service 7 ч.
«Билайн бизнес» сообщил о массовом внедрении аудиобейджей с ИИ — они проанализировали 600 тысяч часов разговоров 7 ч.
Представлен iQOO 15T — игровой смартфон с разогнанным Dimensity 9500, 200-Мп камерой и батареей на 8000 мА⋅ч 8 ч.
AMD готовит мини-ПК Ryzen AI Halo для вайб-кодинга без облака за $3999 8 ч.