我正在研究使用Quartz来调度作业的应用程序。要安排的作业是通过读取属性文件以编程方式创建的。我的问题是:如果我有几个节点的集群这些应该创建时间表编程?其中只有一个?或者,也许所有?集群石英调度程序配置
0
A
回答
1
我在一个网络应用程序中使用石英,其中用户可以创建执行特定任务的石英工作。
我们对该应用程序没有任何问题,前提是至少每个作业的作业名称不同。你也可以有不同的组名,如果我没记错的话,jobgroup + jobname组合形成一个工作键。
无论如何,我们在创建一个来自不同节点的作业时没有问题,但当时的石英(大约6个月前,我不相信这已经改变,但我不确定)没有提供停止集群中的作业,它只能停止执行停止命令的节点上的作业。
如果您只是想在应用程序启动时创建固定数量的作业,则最好将该作业委托给其中一个节点,因为将从每个节点的相同属性文件读取作业名称/组,并且冲突将会出现。
0
你有没有试过在它们上面创建它们?我想你会因为重复的名字而发生冲突。 所以我认为其中一个成员应该在启动过程中创建时间表。
0
如果集群中的预定义属性像您说的那样,那么您应该只有一个系统为该集群安排作业。如果所有系统都这样做了,那么如果每台服务器都创建或删除了相同的作业和触发器,则可能会不必要地重新创建作业,并且可能会将其置于奇怪的状态。
您只需将作业的属性部署到一台服务器,然后只有一台服务器会尝试创建它们。
您可以制作一个单独的应用程序,其目的是安排作业并只运行一次。
如果这些是Web服务器,您可以制作一个简单安全的REST API来触发调度过程。然后,您可以编写一个自动脚本来访问该API,并启动作为部署的一部分或任何其他需要的时间安排作业。如果负载平衡器后面有多个服务器,则应该只有一台服务器,并计划将石英保存到数据库支持的作业库的作业。群集中的其他节点将在下一次从数据库更新时接收它们。
相关问题
- 1. 石英集群调度THREADCOUNT
- 2. 带配置调度程序的石英
- 3. 石英调度程序集群时间同步
- 4. 石英调度程序vs设置cron
- 5. 石英调度程序的设置 - Mule
- 6. 石英调度程序theadpool
- 7. grails石英调度程序
- 8. 石英调度程序cron
- 9. 石英调度程序 -
- 10. 石英调度程序
- 11. 石英集群:所有节点上都可见的调度程序动作
- 12. 石英调度程序和线程
- 13. 关于对群集和非群集调度程序使用同一组石英表
- 14. jboss接缝+石英调度器2.2.1 +集群
- 15. 石英调度
- 16. 石英调度程序丢失作业
- 17. python企业调度程序(如石英)
- 18. 石英:调度程序已关闭
- 19. 石英调度程序作业迁移
- 20. 石英调度程序中断作业?
- 21. 关机石英调度程序
- 22. 停止单石英调度程序
- 23. 石英调度程序实例为空
- 24. 石英调度程序 - Cron未运行
- 25. 石英与Java EE 7调度程序
- 26. getJobNames()在石英调度程序2.2.1
- 27. 石英调度程序-HELP需要
- 28. 石英调度程序如何工作?
- 29. Grails集群石英工作示例代码和配置所需
- 30. 群集配置中石英的奇怪行为