Javascript 将前端(Vue.js、React和Angular)与Kafka集成为事件驱动体系结构微服务的一部分

Javascript 将前端(Vue.js、React和Angular)与Kafka集成为事件驱动体系结构微服务的一部分,javascript,apache-kafka,architecture,frontend,Javascript,Apache Kafka,Architecture,Frontend,这是一个与架构相关的问题。我正在探索一种新的体系结构/范式(实时事件驱动),其中前端(可以是vue.js、angular或react)调用多个与分布式流媒体平台(如kafka)集成的rest服务 我很难把这些放在一起。原因如下 对于前端上的简单操作(不涉及状态更改),HTTP GET API调用就足够了—不需要Kafka 对于具有状态更改的操作,例如更新某些内容,需要HTTP POST调用——这正是Kafka可以派上用场的地方 然而,我也知道有人使用WebSocket来解决这个问题 那么,如何充

这是一个与架构相关的问题。我正在探索一种新的体系结构/范式(实时事件驱动),其中前端(可以是vue.js、angular或react)调用多个与分布式流媒体平台(如kafka)集成的rest服务

我很难把这些放在一起。原因如下

  • 对于前端上的简单操作(不涉及状态更改),HTTP GET API调用就足够了—不需要Kafka

  • 对于具有状态更改的操作,例如更新某些内容,需要HTTP POST调用——这正是Kafka可以派上用场的地方

  • 然而,我也知道有人使用WebSocket来解决这个问题


    那么,如何充分利用卡夫卡,使前端和后端成为真正的事件驱动架构

    您需要一个三层应用程序

    Kafka是数据存储的后端层

    存在一些API层来执行RPC。Kafka Streams交互式查询可用于为get by id类型查询创建键值存储ktable

    您的API层还可以运行活动的Kafka使用者线程,该线程将消息推送到websocket或作为SSE消息

    您的web应用程序将打开并订阅websocket,并使用JS更新DOM

    用户在站点上的输入可以发送POST或返回API

    API层将轮询或推送到(其他)卡夫卡主题