我已经为Web应用程序实现了SignalR支持。它很棒。我现在要处理的问题是让它在非Azure Web场环境中工作。 SignalR支持开箱即用的Windows Azure Service Bus和Redis。 GitHub上还有RabbitMQ实现。所有这些解决方案都实现了IMessageBus接口。
根据我们目前的情况,我们不能使用Redis或RabbitMQ。所以我几乎没有问题:
1)是否有使用SQL Server或MSMQ的替代解决方案?
2)为SQL Server或MSMQ实现自己的解决方案是否很困难(可能)?大卫在SignalR 0.5上的帖子(http://weblogs.asp.net/davidfowler/archive/2012/05/02/signalr-0-5.aspx)表示他们将支持SQL Server QNS或Service Broker(不是SQL Server)数据库本身)所以也许这是一个错误的方式?
3)在实施此支持之前,有没有办法解决?例如,听起来我们需要处理服务器之间的连接列表状态。如果我们知道节点数量及其IP,我们可以通过Web服务调用在服务器之间共享此信息。它有意义吗?
答案 0 :(得分:1)
Damian Edwards似乎刚刚开始研究SQL scaleout实现。您可以找到该实施的详细信息here on GitHub和issue tracking this work can be followed here。