0

Я конвертирую свое приложение из классического сервиса в микросервис. Мне нужно подсчитать общее количество открытых сеансов.Как вести учет открытых сеансов в службе без гражданства

Моя классическая версия написала локальный счетчик окон: +1 при открытии сессии, -1 на закрытии сессии. Если служба неожиданно умерла, новый экземпляр сбросит счетчик во время запуска. Служба удаленного мониторинга собирала счетчик из всех экземпляров и показывала общее и среднее значение.

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

Я не понимаю, как сбросить счетчик, если служба неожиданно умирает. Единственная идея, которую я получил, - начать собирать сердечные удары из каждой службы и сбросить счетчик, если служба умрет, но, похоже, она слишком завышена.

Есть ли более элегантные шаблоны для надежного учета открытых сеансов для службы без гражданства?

Существует ли стандартная терминология для этого сценария в системах управления микросервисами?

ответ

1

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

Смежные вопросы