Всем привет! У меня есть один вопрос, возможно кто-нибудь сталкивался.


Настроена простая очередь, 1 consumer с ручным подтверждением, но почему то не сохраняется порядок сообщений, т.е. отправляем [5, 4, 3, 2, 1, 0 - {head} ] на другой сервер - он недоступен, соответственно сообщения ждут в очереди. После включения сервера сообщения доставляются уже не в том порядке, например [4, 5, 0, 1, 2, 3 ]. словно после noAck сообщение перебрасывается в конец очереди. Разве из очереди не должно браться по принципу FIFO? Раньше нарушения порядка не наблюдала
Как то неправильно настроен consumer? Подскажите, пожалуйста, с чем может быть связано?

3 ответов

19 просмотров

Звучит так что в консьюмере действительно неверно реализована логика возврата в очередь (не nack, а reject/ack+publish) Второй вариант что у вас просто prefetch count > 1, и сообщения обрабатываются в многзадачности без соблюдения очередности

Elvina- Автор вопроса
Aleksey Barabanov
Звучит так что в консьюмере действительно неверно ...

Consumer один, и prefetch = 0. в теории должно быть линейно. Насчет логики возврата, явно указываю channel.BasicNack(eventArgs.DeliveryTag, false, true) // requeue - true

Elvina
screenshot Consumer один, и prefetch = 0. в теории должно быт...

нет, при префече 0 никаких гарантий линейности не достигнуть

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

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

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