1

我正在评估一些消息传递库和协议(例如 ZeroMQ、WAMP)。我的主要要求之一是从客户端向服务器发送消息,反之亦然(双向通信)对于客户端/服务器崩溃必须是绝对安全的。这对我来说意味着,例如客户端必须在自发重启后继续发送所有未传递的消息。所以库应该实现某种基于文件的缓冲。有什么我可以开箱即用的吗?

[编辑] 关于我的用例的一些说明:在我的场景中,大约有 1000 个客户端与一台服务器通信。不需要直接的客户端到客户端的通信。但是我需要双向通信,所以客户端都可以将一些数据推送到服务器,反之亦然。客户端通过 3G 移动网络连接。客户端和服务器都是用 C# 编写的。我专注于使用 ZeroMQ、Apache Thrift 或 WAMP。但主要要求之一是确保在系统崩溃时异步但安全的消息传递。所以当客户端开始向服务端进行异步数据推送时,在消息还没有发送到服务端就崩溃了,需要客户端在重启后继续发送消息。

4

1 回答 1

0

您可以查看 Apache.org 的Kafka 项目

这个问题比看起来更难,大多数人不想为实现它付出代价。

此外,还有一个用户体验问题,即在用户不理解的情况下重播旧的排队消息。

于 2021-12-02T00:56:22.117 回答