Привет подскажите есть какое-то событие на случай отключения клиента, или

какой-то способ доставить сообщение в случае если клиент отключился?

6 ответов

22 просмотра

На случай развала соединения со стороны приложения можно поймать эксепшен и переподключится. Из вопроса не понятно - речь о консьюминге или публишинге.

Aleksandr-Moskvitin Автор вопроса

Нет речь не о клиенте, а самой очереди, сообщить остальным что кто-то отключился

кто отключился? консьюмер? в контексте реббита и паблишер и консьюмер - клиенты. используйте пожалуйста общепринятую терминологию

Aleksandr-Moskvitin Автор вопроса

Просто клиент (он же может быть и консьюмером и паблишером) просто хочется знать что один из инстанцов приложения отключился

абстрактно эту задачу решать не стоит, если отключился например консюмер, то причин может быть несколько: стала недоступна нода, к которой он подключен, случился косяк на стороне вашего кода, который закрыл соединение, упал сервер с приложением-консюмером, и наконец оно было закрыто штатно. в первом случае конечно надо знать заранее, но проще такие вещи мониторить на уровне кластера, чем на уровне приложения, а приложению лучше научиться грациозно переподнимать соединение, это достаточно просто и есть во многих расшиенных либах для работы с мку из коробки. во втором кейсе желательно чтобы у вас было логирование необработанных ошибок, например через efk-стек, настроить алерты на фатальные факапы можно без особых проблем если упало само приложение, оно конечно уже ничего не переподключит и не напишет в лог, но в современном мире слава богам есть кубер и иже с ним, можно сделать например репликасет консюмеров, и быть уверенным что даже при полном отказе приложения, простой будет минимальный ну а когда все штатно - то и знать наверное нечего, все же штатно?

Aleksandr-Moskvitin Автор вопроса

Я не хочу решать проблему, я прост хочу понимать кто пришел кто ушел

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

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

Добрый день! Удалил все файлы с переменными из проекта, получил 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
А как подмаунтить каталог если я не буду стапель юзать, а просто Докерфайл?
yoshi kakbudto
3
Привет! Вопрос про 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
Всем привет. Сегодня добавили в приложение дополнительный образ nginx, в который докидывается системная статика прям в образ. При деплое бандлами деплоилось 200+ джоб(клиентов...
Владимир Муковоз
6
Добрый день, подскажите пожалуйста, а как поле project (в werf.yaml) параметризовать ? werf converge —project <APP_NAME> в одном общем репо держим 1 хельм чарт и деплоим с ...
Sulaymon
5
Вопросик не совсем werf. Но вдруг мы подскажите воркэраунд или ещё что-нибудь. Могу ли я как-нибудь в моменте деплоя внутри heml рендера получить хэшсумму файла шаблона (./tem...
Alex Подрябинкин
11
Друзья, добрый день. Прошу подсказать с базовым вопросом по использованию CI переменных gitlab в werf.yaml. Хочу в beforeInstall использовать env переменную с токеном. Мне нуж...
Anton Zol
10
Здрасьти! Делаю Buildah+Docker-multistage. В первом имадже делаю COPY кода. Из них генерю файлы: 31229b03ef2ed26c5e02d0e8320f8a04 ./package.json a0b92a158d0bed9570350af0ed3e...
Vyacheslav
4
Карта сайта