Всем привет. Подскажите, пожалуйста, Хотим реализовать взаимодействие двух приложений через RabbitMQ. Интересует следующее

сервер отправляет сообщение в очередь для клиента, клиент сообщает об успешности приема сообщения и приступает выполнять обработку.
По факту выполнения клиенту надо отправить сообщение с результатом на сервер желательно через Rabbit.
Возникает вопрос, нужно ли на стороне клиента открывать внешний порт?

8 ответов

23 просмотра

Вам читать про RPC, в доке подробно написано. Порты открывать не обязательно, все общение проходит через брокера в таком формате.

Никита-Попов Автор вопроса
Владислав Килин
Вам читать про RPC, в доке подробно написано. Порт...

Спасибо, за ответ. Если вас не затруднит, можете скинуть ссылку?

Никита-Попов Автор вопроса

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

Aleksey Barabanov
Торчать портами нет необходимости. Но возможно дл...

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

Сергей
Вопрос, при заборе сообщений и пропаже интернета, ...

пока ACK не пришел об обработке - они будут в очереди, да. Вопрос скорее - если в обработку взято и в этот момент произойдет обрыв. получается что засчет механизма heartbeat сообщение вернется как необработанное. хотя на клиенте обработка пройдёт

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

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

Всем привет. Понимаю, что, наверное, сто раз поднимали эту тему, но по ключевым словам не смог найти. Как передать в values.yaml зависимого хелм-чарта теги образов, собираемых...
Vitalik Petrov
4
Всем привет. Werf v2.10.5 При удалении релиза вместе с неймспейсом (werf dismiss --namespace namespace_name) Сыпятся ошибки ┌ Waiting for resources elimination: namespaces/rel...
Vitalik Petrov
1
@aigrychev, @ilya_lesikov добрый день! а поддерживает ли werf helm xxxx или werf bundle xxxx работу с сабчартами через http-прокси? (сработает ли использование HTTP_PROXY/HTTP...
Сергей Голод
4
Добрый день! Удалил все файлы с переменными из проекта, получил 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
Карта сайта