【发布时间】:2020-06-11 16:40:51
【问题描述】:
我正在寻找一种在用不同语言编写的应用程序之间实现基本发布/订阅的方法,以使用 JSON 有效负载交换事件。
WebSocket 似乎是传输的明显选择,但您需要在顶部有一个(可以说很小)层来实现一些管道:
- 同意代表 pubsub 域的消息“订阅主题”、“发布消息”
- 同意基础设施的消息(“心跳”、“身份验证”)
我期待为此找到一个明显的标准,但似乎没有。
- WAMP 经常被提及,但根据我的(短暂的)经验,服务器/客户端库的实现并不是很好
- STOMP 经常被提及,但根据我(甚至更短)的经验,它甚至更糟
- Phoenix 频道不错,但仅限于 Phoenix/Elixir 世界,而不是标准频道(因此可以在任何 phoenix 版本中更改消息,恕不另行通知。)
那么,每个人都在使用 MQTT/WS(需要另一个代理组件,而不是简单的服务器?)还是 gRPC?
每个人都只是从头开始重新实现它吗? (这是一件看起来很容易自己做的事情,但我猜你最终会得到我正在寻找的东西的半生不熟、规格不全、损坏的版本......)
或者,通过 WS 从服务器提供数据流的想法是否存在根本性的问题?
【问题讨论】:
标签: json websocket publish-subscribe