两个quartz访问同一数据库_quartz非集群共享数据库的bug——quartz诡异问题解决一例 | 学步园...

本文描述了在Quartz非集群部署情况下,多个实例访问同一数据库导致的任务执行异常问题。作者发现任务虽然在数据库中记录了执行信息,但在实际执行时,文件写入和断点调试出现异常。经过分析,问题在于不同机器时间不一致,导致快速机器抢先执行任务。解决方案是将其他同事的项目配置为使用RAMJobstore,避免多实例同时执行同一任务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,我只是个菜鸟,没什么经验,所写的东西都是自己从工作或学习中总结出来的,所以,文章中难免有谬误,希望大家指正。

现在的项目中用到quartz做任务调度,由于项目组的同事以前都没用个这个东西,所以安排我研究quartz,然后给各位同事培训,还要在quartz上封装一层更简单易用的接口,项目中quartz相关的问题也由我维护,项目开发过程中quartz表现的一直很乖巧,但是就在前几天出现的一个问题差点儿让我抓狂。

下面说一下项目中quartz的配置和部署情况:在开发阶段quartz是非集群部署的,jobstore使用JobStoreTX,数据库用的是项目组公用的oracle数据库。quartz的配置文件如下:

#===============================================================

#Configure Main Scheduler Properties

#===============================================================

org.quartz.scheduler.instanceName = BCScheduler1

org.quartz.scheduler.instanceId = AUTO

#===============================================================

#Configure ThreadPool

#===============================================================

org.quartz.threadPool.threadCount = 5

org.qua

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值