|
1
7
我过去曾为此使用过基于消息的服务总线框架。 您编写了一个应用程序(作为windows服务运行),用于侦听通过事件总线广播的消息。 您的前端可以将这些消息发布到总线中。 在.NET中最流行的框架是 NServiceBus 然而,它最近变得商业化了。您也可以查看 MassTransit ,尽管这本书的文档很差。 您要执行的工作流:
使用这样的框架的好处是,如果您的服务中断或重新部署,任何处理都可以排队并恢复,这样您就不会有任何停机时间。 |
![]() |
2
5
对于长时间运行的操作,您需要单独的Windows服务应用程序(或者Worker Role,如果是Windows Azure)。IIS可能会在池回收时终止ASP.NET进程,您的操作将无法完成。 消息队列主要用于通信。您可以在web和工作部件之间使用它。但是,除非您的数据不是超级关键的,否则这不是必需的。您可以使用数据库、缓存、文件系统或100种其他不同的方式建立通信:) 您可以使用SignalR通知您的客户已完成处理。 |