@hirthwork

hirthwork

Меня зовут Пить
hirthwork

Всего лишь бабочка, которой снится, что она программист

Славный отзывчивый парень © https://t.me/point_im/161357

32 я читаю 94 меня читают
5791 постов
48198 комментариев
hirthwork
24 Nov 2020

Я даже не знаю, это «Ахахаха» или уже «мяу».
В коде, который не менялся полтора года нашёлся баг, который наглухо вешает сервис (ну не наглухо, но на выполнение ему нужно очень много времени).
При этом входные данные для того, чтобы завесить сервис выглядят почти безобидно и полностью корректны.
И да, туда передаётся UGC. И вызывается этот код примерно 500 миллионов раз в сутки. На протяжении полутора лет, Карл!

А как хорошо вы прячете баги у всех на виду?

24 Nov 2020

Да нормально! Железом завалить и можно дальше жить

24 Nov 2020

Ага. Завалить. Железом. Квантовым. Потому что обычно запрос размером 70 кб этот сервис обрабатывает 2-3 мс, а тут потратил 25 минут.

#zheha/2 в ответ на /1
24 Nov 2020

rayslava, загнать в yandex cloud, k8s, балансировка и вот это всё

#zheha/4 в ответ на /3
24 Nov 2020

удобно. скажи спасибо, что никто снаружи это не воспроизвёл и не положил вас нахуй.

Комментарий был отредактирован в 10:10:49 24.11.2020
#zheha/5
24 Nov 2020

А как он это нашёл, по-твоему?

#zheha/6 в ответ на /5
24 Nov 2020

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

Комментарий был отредактирован в 10:14:40 24.11.2020
#zheha/7 в ответ на /6
24 Nov 2020

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

#zheha/8 в ответ на /7
24 Nov 2020

Чувствуется опытный разработчик

#zheha/9 в ответ на /6
24 Nov 2020

а, ну это уже меняет дело. я думал ты просто наконец решил разгрести этот сраный хвост в сотой процентили.

#zheha/10 в ответ на /8
24 Nov 2020

Всегда так делаю. Всё оттестировал локально, оттестировал в песочнице, оттестировал в окружении, аналогичным продакшену, выкатываешь в продакшен и всё наглухо падает, унося с собой серверные ноды на рестарт.

#zheha/11 в ответ на /9
24 Nov 2020

Эта задача внесена в бэклог уже шестой год подряд, да.

#zheha/12 в ответ на /10
24 Nov 2020

у нас просто сервисы маленькие и у нас эти задачки где-то раз в пару месяцев всплывают.

#zheha/13 в ответ на /12
24 Nov 2020

У этого сервиса надёжность в шесть девяток, там нечего разгребать, кроме фичреквестов от полутора калек

#zheha/14 в ответ на /10
24 Nov 2020

Даже если маленькие. Эти задачи где-то есть, но всегда есть что-то более приоритетное.

#zheha/15 в ответ на /13
24 Nov 2020

ну слушай, он же у тебя отвечает, значит надёжен =]

#zheha/16 в ответ на /14
24 Nov 2020

у нас тоже был сплошной "feature first" пока продакт не охуел вконец от этих разных, но редких глюков - он же on call :-D. теперь он раз в какое-то время принудительно эти вещи поднимает вверх беклога.

Комментарий был отредактирован в 11:00:23 24.11.2020
#zheha/18 в ответ на /15
24 Nov 2020

Да, мы тоже любим так шутить

#zheha/22 в ответ на /17
24 Nov 2020

А во время тестирования вот эта самая мысль «изи ваще»

#zheha/23 в ответ на /11
24 Nov 2020

А с service mesh можно миррорить запросы с prod на ноды с новым релизом перед тем как туда живых юзеров переключать.
Конечно, от редкого бага как в /0 не спасет

#zheha/25 в ответ на /11
24 Nov 2020

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

#zheha/26 в ответ на /25
24 Nov 2020

моки в проде

в чём смысл?

#zheha/29 в ответ на /27
25 Nov 2020

пре-проде. Смысл пре-прода в работе на реальных данных с прода

#zheha/30 в ответ на /29

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.