1

我有一个quartz.net 调度程序实现(和作业)。调度程序位于我的网站/应用程序本身内部,并以指定的时间间隔异步运行作业。

在本地和测试上一切都很好。一旦我将此代码移动到现场(其中有多个负载平衡器运行我的网站实例),作业开始触发的次数与负载平衡器的数量一样多。

我该如何处理?我如何确保只有一个调度程序在我的所有负载均衡器上运行作业。

或者,有没有办法让我找出以前的工作是什么时候被解雇的(在任何负载平衡器上!)

谢谢

4

1 回答 1

0

如果您使用数据库作为作业存储,将所有调度程序指向同一个数据库并将它们设置为集群,那么您的作业将在服务器之间共享,您不会让它们多次触发。

或者,您也可以将调度程序移到它自己的 Windows 服务中,然后在您的 Web 服务器之间共享它。

于 2013-03-28T17:36:49.310 回答