使用Service Bus将消息从Web角色发送到所有其他Web角色

时间:2012-03-26 15:46:55

标签: azure servicebus

我正在设计一个后端,允许用户使用它建立一个TCP套接字,并在这个套接字上发送/接收内容(使用我编写的伪协议)实时。

它必须是可扩展的 - 即在云主机上架构。目前我正在评估Windows Azure。


为了实现可伸缩性,应用程序将在多个Web角色实例上运行。这意味着用户的TCP套接字将分散在多个实例中(通过负载均衡器)。

此后端是一个事件驱动的应用程序 - 当用户向其发送内容时,该消息应传递给所有其他连接的用户。

这意味着必须有一种可靠的方法将消息从一个Web角色实例发送到所有其他Web角色实例。据我所知,这就是角色间沟通所指的内容。

使用Service Bus,所有Web角色实例是否可以订阅主题并向其发布消息?从而实现我的分布式应用程序的事件驱动要求?

(如果没有,那么我误解了这篇文章的内容:http://windowsazurecat.com/2011/08/how-to-simplify-scale-inter-role-communication-using-windows-azure-service-bus/


在深入学习C#,.NET和Windows Azure开发之前,我想找到这个。

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

是的,使用服务总线,所有Web角色都可以向单个主题发送消息,每个角色可以拥有该主题的唯一个人订阅,以便他们都接收发送的消息。

Clemens Vaster使用服务总线实现了SignalR的扩展。 SignalR + Service Bus可能满足您项目的需求,包括TCP套接字实现。

http://vasters.com/clemensv/2012/02/13/SignalR+Powered+By+Service+Bus.aspx