172 похожих чатов

Подскажите по такой задаче. У меня есть N подов с моим

REST сервисом. У каждого есть внутри ограничение конкуретности запросов.
Например каждый может делать одновременно 5 запросов (они разные по длительности).
Если он "занят" то он отвечает http code 429.

Я попробовал прикрыть это обычным round robin load balancer - работает плохо. Постоянно шлёт на незанятые (понятно что ему инфы мало).

Как бы это решить красивее?

Мне в голову только приходит дополнительно поставить какой то умный proxy (haproxy?)
Который бы умел делать это умнее. (я могу ещё ручку впилить которая скажет свободен или нет со стороны pod)

5 ответов

20 просмотров

может асинхронности добавите

engelbart- Автор вопроса
Sergei Monakhov
может асинхронности добавите

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

engelbart
Ну я могу на клиента, но это же не изменит того чт...

так вы можете сделать сервис асинхронным и не отдавать 429, или повесьте частый readinessProbe, но гарантий тоже не будет, дальше сервисмешы и энвой

умный энвой и пускай ему в реальном времени бекендыы сами что надо сообщают

nginx proxy_next_upstream error timeout http_429;

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта