我已经实现了在ASP.NET下运行的几种不同类型的后台工作程序,但想知道推荐/最佳实践方法可能是什么。
在数据存储中(在这种情况下是一个mongo db)我有一个我需要处理的动作队列。
队列将根据ASP.NET MVC应用程序中的某些操作而增长。
我想启动一个后台线程/工作线程来连续处理这些排队的项目。
是否像在应用程序的启动事件中启动后台工作程序一样简单,还是应该在计时器上完成?
提前致谢
SAM
答案 0 :(得分:2)
我使用http://quartznet.sourceforge.net/index.html进行作业安排,并且运气不错。
答案 1 :(得分:1)
我认为最好的答案是Haacked的这篇文章。
The Dangers of Implementing Recurring Background Tasks In ASP.NET
总之,IIS是一个请求驱动的 Web服务器。这意味着如果没有人打你的网站就不会发生任何事情。您可以解决此问题,但如果您需要强大的后台任务,建议的方法是 Windows服务。