Я с микросервисами сталкивался мало, но у меня давно гложил такой момент о котором я сейчас вспомнил и решил задать про него вопрос экспертам по микросервисам с ЛОРа.
Допустим у вас есть микросервисное приложение. За внешнее взаимодействие с клиентами отвечает сервис с обработчиками запросов. Он принимает сообщения от клиентов и направляет их обработку целевым сервисам которые должны будут осуществить работу и сообщить о результате. Коммуникация между микросервисами происходит через Kafka.
Внимание вопрос, если у вас микросервис принимающий запросы от клиента динамически масштабирующий (т.е. в зависимости от загрузки добавляются/убираются его инстансы) то как поступать с SSE или Websocket соединениями, когда клиент подключившись к определенному инстансу ожидает ответ обработки? Т.е. результат работы целевого микросервиса должен быть доставлен на конкретный инстанс где висит соединение с клиентом.
Как в этом случае адресуют конкретный инстанс? Как именно в него доставить результат, а не случайному инстансу подписанному на получение событий из очереди сообщений?
P.S. Порекомендуйте литературу где, в том числе, есть ответ и на мой вопрос.