Парни, всех с НГ Вопрос по Rabbit — есть ли возможность

настроить его так, чтобы он выдавал воркеру только заданное количество пакетов в минуту? Мне нужно не провоцировать 429 ошибку в телеге https://stackoverflow.com/questions/31914062/telegram-bot-api-error-code-429-error-too-many-requests-retry-later

И еще вопрос — куда смотреть, чтобы сделать обработку сообщений определенного типа более приоритетной по сравнению с другими сообщениями в очереди?

16 ответов

74 просмотра

Стикер

Стикер

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

Vadim
Редис, nginx.

Я как раз о redis или etcd думал. А каким образом nginx?

Dmitry 🦆
Я как раз о redis или etcd думал. А каким образом ...

Ну nginx реверспрокси, умеющий в рейтлимит. Можно запросы через него гнать и никаких синхронизаций не потребуется

Dmitry 🦆
Понадобится какая-то отдельная база для синхрониза...

Или принять что консьюмер будет всегда один)

Просто надо перекладывалку сделать с рейтлимитом, без изменений в схеме взаимодействия текущим по-сути

Aleksey Barabanov
Ну nginx реверспрокси, умеющий в рейтлимит. Можно ...

А я не понял, как, ведь консьюмеры обычно в веб не смотрят. Ну либо я только в таких местах работал.

Aleksey Barabanov
Или принять что консьюмер будет всегда один)

Когда он один, то мне тогда уже реббит кажется лишней сущностью)

Dmitry 🦆
А я не понял, как, ведь консьюмеры обычно в веб не...

Куда им надо, туда и смотрят. Консюмер это обычное приложение.

Владислав Килин
Куда им надо, туда и смотрят. Консюмер это обычное...

Ну, в очередь смотрят, порции получают для обработки..

Dmitry 🦆
Когда он один, то мне тогда уже реббит кажется лиш...

Консюмер этой очереди может быть один, такое бывает. Это не значит, что надо от всего кроля отказываться, если для одной задачи необходима последовательная обработка не более чем одним консюмером =)

Dmitry 🦆
Ну, в очередь смотрят, порции получают для обработ...

Ключевое слово тут "обработка" - разные консюмеры обрабатывают по-разному. Возьмите банально консюмер, который общается с внешним SMTP для отправки писем.

Dmitry 🦆
Когда он один, то мне тогда уже реббит кажется лиш...

Совсем нет. Накопление очередей сообщений перед ограниченым ресурсом это как раз вотчина реббита. А рейтлимит это яркий пример ограниченного ресурса.

Dmitry 🦆
А я не понял, как, ведь консьюмеры обычно в веб не...

Как выше сказали смотреть они могут куда угодно

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

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

Добрый день! Удалил все файлы с переменными из проекта, получил Error: release deploy: process resources: error validating adoptable resources: adoption validation failed: re...
Evgheni Mad
2
@aigrychev, @ilya_lesikov добрый день! а поддерживает ли werf helm xxxx или werf bundle xxxx работу с сабчартами через http-прокси? (сработает ли использование HTTP_PROXY/HTTP...
Сергей Голод
4
Привет! Вопрос про werf helm Приложение деплоится через werf helm upgrade --atomic Иногда(все условия для воспроизведения до конца непонятны, но есть версия, что это происходи...
𝓐𝓵͢͢͢𝓮𝔁 C
2
Всем привет. Werf v2.10.5 При удалении релиза вместе с неймспейсом (werf dismiss --namespace namespace_name) Сыпятся ошибки ┌ Waiting for resources elimination: namespaces/rel...
Vitalik Petrov
1
А как подмаунтить каталог если я не буду стапель юзать, а просто Докерфайл?
yoshi kakbudto
3
Всем привет. Сегодня добавили в приложение дополнительный образ nginx, в который докидывается системная статика прям в образ. При деплое бандлами деплоилось 200+ джоб(клиентов...
Владимир Муковоз
6
Добрый день, после перехода с версии 1.2 на 2.10 werf cleanup начал удалять использующиеся теги, и до и после обновления использовались дефолтные политики keepPolicies Подскаж...
Дмитрий
29
Вопросик не совсем werf. Но вдруг мы подскажите воркэраунд или ещё что-нибудь. Могу ли я как-нибудь в моменте деплоя внутри heml рендера получить хэшсумму файла шаблона (./tem...
Alex Подрябинкин
11
Друзья, добрый день. Прошу подсказать с базовым вопросом по использованию CI переменных gitlab в werf.yaml. Хочу в beforeInstall использовать env переменную с токеном. Мне нуж...
Anton Zol
10
Добрый день, подскажите пожалуйста, а как поле project (в werf.yaml) параметризовать ? werf converge —project <APP_NAME> в одном общем репо держим 1 хельм чарт и деплоим с ...
Sulaymon
5
Карта сайта