我有几个网络服务器,需要它们来使用 Quartz。Quartz 的集群功能将是理想的,但它要求服务器时钟完全同步。他们对此有一个非常可怕的警告:
永远不要在单独的机器上运行集群,除非它们的时钟使用某种形式的时间同步服务(守护程序)进行同步,这种服务非常有规律地运行(时钟必须在一秒内)。
我不能保证完全的时钟同步,所以我没有使用集群功能,而是考虑拥有一个 Quartz 实例(具有备用故障转移)。让单个实例执行作业不是问题,但我仍然需要所有 Web 服务器都能够安排作业。
我可以直接将作业从 Web 服务器添加到 JDBCJobStore,它们会被(非集群)Quartz 服务器拾取吗?我将通过在 Web 服务器中创建计划实例来添加作业来做到这一点。这些实例永远不会启动,只是用于访问 JobStore。