通过WCF提供RabbitMQ服务器对

我试图找出通过wcf使用rabbitmq集群的最佳解决方案。

当前设置:

  • 2个IIS Web服务器(充当消息产生并通过amqp wcf客户端发送消息到队列)。
  • 2个带有rabbitmq代理的服务器(与镜像队列,rabbit1和rabbit2集群)
  • 带有托管amqp wcf服务的Windows服务(worker),用于监听传入消息。
  • Web角色发布消息给rabbit1节点,worker也收听rabbit1节点。 如果rabbit1节点发生故障,系统(网络和工作人员)都应该切换到rabbit2。 这就是问题所在,如何以更优雅的方式实现它,而不是处理应用程序代码中的连接失败。

    首先,我现在看到的唯一方法是使用wcf4路由备份端点功能。 这种方式只解决客户端(web角色)的问题,但不能解决wcf服务端(worker角色)的问题。


    一种方法是在服务主机周围创建一个包装器,用于存储连接字符串列表(可以来自配置)。

    向服务故障事件添加处理程序,您可以在其中关闭并用不同的连接字符串重新打开主机。

    链接地址: http://www.djcxy.com/p/34163.html

    上一篇: availability RabbitMQ server pair via WCF

    下一篇: Publish/Subscribe reliable messaging: Redis VS RabbitMQ