我需要在本地网络中创建具有以下功能的客户端-服务器应用程序:
- 单服务器(数据访问等......)
- 多客户端(普通3-5个,最多20个)
- 每个客户端必须在服务器上授权(需要检查它有什么权限)
- 客户端向服务器发送请求(通常小于 1 Kb,最大 3-5 Kb)并获得响应(普通 30-100 Kb,有时可能是大量数据,最大 1-2 Mb)
- 在来自客户端的一些查询之后,服务器通知所有客户端并向它们发送新的和更新的数据(因此服务器必须知道连接了多少客户端)
- 如果网络连接中断,客户端必须重新连接
我认为带有 Protobuf 的 NetMQ 足以满足我的目的。我查看文档,发现最适合我的任务的模式是http://zguide.zeromq.org/page:all#Service-Oriented-Reliable-Queuing-Majordomo-Pattern当每个客户端都是工作人员和服务器工作人员时同时是客户。
我认为这个解决方案也很复杂?是否有更简单的方法来解决此类问题(更简单的模式或基于 WCF 的方法)?