使用WebSocket连接创建扇出服务

edqdpe6u  于 2024-01-08  发布在  其他
关注(0)|答案(1)|浏览(113)

我试图建立一个应用程序,服务于真实的时间数据的最终用户.我正在考虑使用一个WebSocket连接,因为数据是很多(10事件/秒).麻烦的是,数据是来自第三方的WebSocket连接.我被限制为只有1个WebSocket连接,在未来我可以要求更多,但只有一对夫妇.
我在想的是设计一个WebSocket扇出服务,它的工作原理有点像这样。x1c 0d1x建议的设计。我对这种设计的可靠性感到困惑,以及我如何有效地扩展它。这是一个开放式的问题,因为我真的熨平了设计细节,但我会喜欢任何有经验的输入在这里。
PS:我要么在后端使用Node.js,要么使用Sping Boot 。

zengzsys

zengzsys1#

我有几个问题

  • 最终用户如何从中介访问这些数据?是通过HTTP、Web Sockets、Polling还是PubSub?
  • 数据将如何存储在中间状态(从套接字接收,但最终用户无法访问)?

由于这类似于一个系统,摄取实时市场数据,我会建议几件事:

  • 实现此系统的POC,并检查事件最初发生与最终用户收到事件之间的时间差。
  • 使用高压缩数据包格式向客户端发送数据(protobuf),因为JSON在序列化/反序列化方面很慢,而且体积也很大
  • 评估需要处理的数据量,并确保中间服务器具有良好的计算能力和足够的内存,以提供必要的吞吐量/性能沿着能够在内存中存储数据

相关问题