使用SignalR在计划事件发生时通知客户端

时间:2014-12-13 00:22:27

标签: asp.net-mvc signalr

我正在开发一个显示当前人员配置数据的ASP.NET MVC 5应用程序,并在发生人员配置更改时使用SignalR通知已连接的客户端。这对于实时事件非常有用(“我现在需要离开工作。”),但现在我需要处理将来会发生人员变动的预定事件。

也就是说,事件可能安排在3小时27分钟(“我需要在下午4点离开工作”)或甚至3个月后发生。事件发生时,应通知已连接的客户端,以便向最终用户显示正确的人员配置数据。当然,未来可能会发生变化,解决方案需要考虑被取消或修改的预定事件。

我希望找到一种干净的方法来做到这一点,不涉及从客户端频繁轮询以了解即将发生的事件,服务器端的一个线程,等等。

1 个答案:

答案 0 :(得分:0)

我会创建一个小型的Windows服务来处理调度。然后使用服务总线向Web服务器发送信号,例如

http://ayende.com/blog/3752/rhino-service-bus

在网络服务器上,您可以使用https://github.com/AndersMalmgren/SignalR.EventAggregatorProxy 将邮件直接转发给客户