消息传递库对客户端/服务器崩溃是安全的



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

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

你可以看看Apache.org的Kafka项目。

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

此外,在用户不理解的情况下重播旧的排队消息存在 UX 问题。

相关内容

  • 没有找到相关文章

最新更新