quartz集群后分组执行的问题
假设有一套系统使用quartz执行任务,分别部署在AB两台服务器上,且A、B使用Quartz进行了集群配置,问题是这样的:
由于任务的内容有两大类,A、B服务器均可以添加,出于某种原因想让A、B分别执行其中的一类,Quartz应该如何配置或编写代码?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
问题已解决:
1. 添加一份新的quartz配置文件,使用相同的数据库作为负载数据库;
2. 创建一套新的qrtz表,并在新的配置文件中配置;
3. 使用quartz配置文件创建StdSchedulerFactory并获取Scheduler;
4. 使用该Scheduler进行任务的执行,从而能够使用同一套数据库完成多套任务的执行。
做个任务分发服务,任务可以配置执行服务器
A、B使用相同scheduler,执行时无法区分两类任务。if...else...里面的内容怎么编写?
可以在服务器启动脚本中添加一个参数。然后程序中判断参数。如在A中加入
-mainServer=y 然后程序中获取
String isMain = System.getProperty("mainServer");
if("y".equals(isMain)){
................
}