Используя CNCF Strimzi Kafka Bridge, я создал небольшой API, который может взаимодействовать с сервером Kafka с использованием протокола HTTP / 1.1. Это все хорошо для сценария запрос-ответ. Однако мое требование состоит в том, чтобы передавать события, полученные по теме Kafka, подписанным клиентам (через мост Strimzi), как только я получу их предпочтительно по долгоживущему HTTP-соединению (согласно моему пониманию). Это бесполезная трата клиентских ресурсов, чтобы постоянно опрашивать мост для сообщений и возвращаться с пустыми руками. Я бы хотел, чтобы сервер Kafka передавал эти события напрямую клиенту.
Я немного не уверен насчет SSE или Websockets или длительного опроса. Я довольно много читал об этих методологиях для потоковой передачи данных клиенту. Тем не менее, я не могу выяснить, относятся ли эти изменения к коммуникационному или прикладному уровню или к тому и другому.
Вы просто создаете API (независимо от технологии), используя традиционный протокол HTTP-связи, и каким-то образом обновляете его для использования Websockets ИЛИ использование Websockets должно быть встроено в ваши библиотеки приложений с нуля?
Я могу предоставить больше информации, если это необходимо. На веб-сайте моста Strimzi Kafka ничего не говорится о «потоковой передаче на стороне сервера» ИЛИ, может быть, я неправильно понимаю истинную цель этого инструмента.