【发布时间】:2020-04-04 23:29:04
【问题描述】:
我正在开发一个项目,该项目在 API 网关后面有多个微服务,其中一些公开了 WebSockets API。
WebApp 需要能够与这些 API 交互。
这些 WebSocket API 可以使用具有自己协议的框架构建,使用或不使用 socket.io 等。
这种反思的主要目标是能够扩展并保持我的 WebSockets API 实现的灵活性。
我想到了两个解决方案:
第一个是在网关上简单地代理请求,webapp 必须为每个微服务打开一个 websocket,这在我看来是一个设计缺陷。
另一个是创建一个“通知服务”,它将是一个 WebSocket 服务器,它将保持与用户的传出连接,并能够根据自定义协议桥接传入消息和传出消息。缺点是我需要实现发布/订阅系统(或找到解决方案)。我没有深入研究它,但它看起来需要大量的工作和自制的解决方案,我不喜欢它。
在生产中公开这样的架构和 websockets 后,我没有找到提供反馈的文章,我希望在这里找到一些。
【问题讨论】:
标签: websocket architecture microservices real-time api-gateway