我想开发一个多服务器集群框架,其工作方式与以下消息流步骤类似。

来自客户

  • 网关服务器收到消息
  • 网关服务器发送 ACK 消息 (UDP)
  • 消息通过工厂从二进制自定义反序列化为对象
  • 然后消息被路由到集群中的辅助服务器(基于配置)并通过 WCF 将对象发送到辅助服务器
  • 消息在辅助服务器上处理。

从服务器

  • 辅助服务器构建消息并发送给网关服务器
  • 网关服务器二进制序列化消息
  • 网关服务器将二进制文件发送到客户端并等待 ACK 消息 (UDP)

服务器将通过 .config 文件进行配置,以指向服务,无论是本地同一应用程序(WCF 将被初始化)还是其他系统。

有没有人致力于创建这样的任何类型的架构,如果是的话,您遇到了哪些问题?


编辑
该系统将成为已经存在的协议的服务器端,因此任何客户端到服务器的协议本质上都是不可触及的,但它确实包括状态管理(客户端在每次调用时发送会话)、加密、服务器路由和数据包保护。


编辑
有人甚至可以提供一个在 .Net 中使用集群的开源项目的链接吗?

有帮助吗?

解决方案

编辑甚至可以提供使用.NET中使用群集的开源项目的链接吗?

查看 这个示例应用程序 出去。据该网站称...

Technologies与ASP.NET和WCF展示了面向服务的N层设计

  • UI、业务服务和数据库访问完全分离
  • 性能设计和调整
  • 通过动态集群进行水平扩展
  • 集群服务节点集中配置管理

其他提示

在长时间运行的事务中维护会话状态可能成为一个主要障碍。您需要确保您的负载平衡解决方案能够考虑或适应在一台服务器上开始并在另一台服务器上完成的会话。这可以通过外部源共享状态来实现,例如浏览器/客户端上的 cookie 或公共数据库服务器上的条目。或者,许多硬件负载平衡解决方案将使用“粘性会话”来确保客户端始终返回同一服务器(例如基于 IP 地址)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top