我有一个quartz.net调度程序实现(和作业)。调度程序位于我的网站/应用程序本身内,并以指定的时间间隔运行作业异步。
在本地和测试方面都非常好。只要我将此代码移动到实时(其中有多个负载均衡器运行我的网站实例),作业就会像负载均衡器一样多次启动。
我该如何处理?我如何确保只有一个调度程序在我的所有负载均衡器上运行作业。
或者有一种方法可以让我找出上一个工作被解雇的时间(在任何负载均衡器上!)
谢谢
答案 0 :(得分:0)
如果您将数据库用作作业存储,请将所有调度程序指向同一数据库并将其设置为群集,然后您的作业将在服务器之间共享,并且您不会多次触发它们。
或者,您也可以将您的计划程序移到其自己的Windows服务中,然后在您的Web服务器上共享它。