From ffb93e2a61d9a570438b6e95d42ceb4297c02b7b Mon Sep 17 00:00:00 2001 From: xuxueli <931591021@qq.com> Date: Sun, 19 Oct 2025 02:38:00 +0800 Subject: [PATCH] =?UTF-8?q?refactor(scheduler):=E9=87=8D=E5=91=BD=E5=90=8D?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E7=B1=BB=E5=B9=B6=E6=9B=B4=E6=96=B0=E5=8C=85?= =?UTF-8?q?=E8=B7=AF=E5=BE=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将 XxlJobAdminConfig 重命名为 XxlJobAdminBootstrap - 更新包路径从 conf 到 config - 替换所有引用点以使用新的类名和包结构 - 确保调度器及相关组件正确初始化配置实例- 验证邮件报警、任务完成处理等模块的兼容性 --- .../controller/openapi/JobApiController.java | 6 +++--- .../scheduler/alarm/impl/EmailJobAlarm.java | 10 +++++----- .../scheduler/complete/XxlJobCompleter.java | 6 +++--- .../XxlJobAdminBootstrap.java} | 8 ++++---- .../scheduler/scheduler/XxlJobScheduler.java | 6 +++--- .../scheduler/thread/JobCompleteHelper.java | 6 +++--- .../scheduler/thread/JobFailMonitorHelper.java | 16 ++++++++-------- .../scheduler/thread/JobLogReportHelper.java | 16 ++++++++-------- .../scheduler/thread/JobRegistryHelper.java | 16 ++++++++-------- .../scheduler/thread/JobScheduleHelper.java | 10 +++++----- .../scheduler/thread/JobTriggerPoolHelper.java | 6 +++--- .../admin/scheduler/trigger/XxlJobTrigger.java | 10 +++++----- .../java/com/xxl/job/admin/util/I18nUtil.java | 4 ++-- 13 files changed, 60 insertions(+), 60 deletions(-) rename xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/{conf/XxlJobAdminConfig.java => config/XxlJobAdminBootstrap.java} (93%) diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/openapi/JobApiController.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/openapi/JobApiController.java index 1be49828..360f8881 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/openapi/JobApiController.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/controller/openapi/JobApiController.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.controller.openapi; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.core.biz.AdminBiz; import com.xxl.job.core.biz.model.HandleCallbackParam; import com.xxl.job.core.biz.model.RegistryParam; @@ -48,8 +48,8 @@ public class JobApiController { if (StringTool.isBlank(uri)) { return ReturnT.ofFail("invalid request, uri-mapping empty."); } - if (StringTool.isNotBlank(XxlJobAdminConfig.getAdminConfig().getAccessToken()) - && !XxlJobAdminConfig.getAdminConfig().getAccessToken().equals(request.getHeader(XxlJobRemotingUtil.XXL_JOB_ACCESS_TOKEN))) { + if (StringTool.isNotBlank(XxlJobAdminBootstrap.getAdminConfig().getAccessToken()) + && !XxlJobAdminBootstrap.getAdminConfig().getAccessToken().equals(request.getHeader(XxlJobRemotingUtil.XXL_JOB_ACCESS_TOKEN))) { return ReturnT.ofFail("The access token is wrong."); } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/alarm/impl/EmailJobAlarm.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/alarm/impl/EmailJobAlarm.java index 094783cb..c3d9dbad 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/alarm/impl/EmailJobAlarm.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/alarm/impl/EmailJobAlarm.java @@ -1,7 +1,7 @@ package com.xxl.job.admin.scheduler.alarm.impl; import com.xxl.job.admin.scheduler.alarm.JobAlarm; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobLog; @@ -49,7 +49,7 @@ public class EmailJobAlarm implements JobAlarm { } // email info - XxlJobGroup group = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().load(Integer.valueOf(info.getJobGroup())); + XxlJobGroup group = XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().load(Integer.valueOf(info.getJobGroup())); String personal = I18nUtil.getString("admin_name_full"); String title = I18nUtil.getString("jobconf_monitor"); String content = MessageFormat.format(loadEmailJobAlarmTemplate(), @@ -63,15 +63,15 @@ public class EmailJobAlarm implements JobAlarm { // make mail try { - MimeMessage mimeMessage = XxlJobAdminConfig.getAdminConfig().getMailSender().createMimeMessage(); + MimeMessage mimeMessage = XxlJobAdminBootstrap.getAdminConfig().getMailSender().createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true); - helper.setFrom(XxlJobAdminConfig.getAdminConfig().getEmailFrom(), personal); + helper.setFrom(XxlJobAdminBootstrap.getAdminConfig().getEmailFrom(), personal); helper.setTo(email); helper.setSubject(title); helper.setText(content, true); - XxlJobAdminConfig.getAdminConfig().getMailSender().send(mimeMessage); + XxlJobAdminBootstrap.getAdminConfig().getMailSender().send(mimeMessage); } catch (Exception e) { logger.error(">>>>>>>>>>> xxl-job, job fail alarm email send error, JobLogId:{}", jobLog.getId(), e); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/complete/XxlJobCompleter.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/complete/XxlJobCompleter.java index 5d79d7b7..d33ac547 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/complete/XxlJobCompleter.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/complete/XxlJobCompleter.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.complete; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.scheduler.thread.JobTriggerPoolHelper; @@ -36,7 +36,7 @@ public class XxlJobCompleter { } // fresh handle - return XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateHandleInfo(xxlJobLog); + return XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateHandleInfo(xxlJobLog); } @@ -48,7 +48,7 @@ public class XxlJobCompleter { // 1、handle success, to trigger child job String triggerChildMsg = null; if (XxlJobContext.HANDLE_CODE_SUCCESS == xxlJobLog.getHandleCode()) { - XxlJobInfo xxlJobInfo = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().loadById(xxlJobLog.getJobId()); + XxlJobInfo xxlJobInfo = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().loadById(xxlJobLog.getJobId()); if (xxlJobInfo!=null && xxlJobInfo.getChildJobId()!=null && xxlJobInfo.getChildJobId().trim().length()>0) { triggerChildMsg = "

>>>>>>>>>>>"+ I18nUtil.getString("jobconf_trigger_child_run") +"<<<<<<<<<<<
"; diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/conf/XxlJobAdminConfig.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/config/XxlJobAdminBootstrap.java similarity index 93% rename from xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/conf/XxlJobAdminConfig.java rename to xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/config/XxlJobAdminBootstrap.java index 557f525a..a3813f8e 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/conf/XxlJobAdminConfig.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/config/XxlJobAdminBootstrap.java @@ -1,4 +1,4 @@ -package com.xxl.job.admin.scheduler.conf; +package com.xxl.job.admin.scheduler.config; import com.xxl.job.admin.scheduler.alarm.JobAlarmer; import com.xxl.job.admin.scheduler.scheduler.XxlJobScheduler; @@ -20,10 +20,10 @@ import java.util.Arrays; */ @Component -public class XxlJobAdminConfig implements InitializingBean, DisposableBean { +public class XxlJobAdminBootstrap implements InitializingBean, DisposableBean { - private static XxlJobAdminConfig adminConfig = null; - public static XxlJobAdminConfig getAdminConfig() { + private static XxlJobAdminBootstrap adminConfig = null; + public static XxlJobAdminBootstrap getAdminConfig() { return adminConfig; } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/scheduler/XxlJobScheduler.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/scheduler/XxlJobScheduler.java index 3c85bd03..cb7a2426 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/scheduler/XxlJobScheduler.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/scheduler/XxlJobScheduler.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.scheduler; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.scheduler.thread.*; import com.xxl.job.admin.util.I18nUtil; import com.xxl.job.core.biz.ExecutorBiz; @@ -93,8 +93,8 @@ public class XxlJobScheduler { // set-cache executorBiz = new ExecutorBizClient(address, - XxlJobAdminConfig.getAdminConfig().getAccessToken(), - XxlJobAdminConfig.getAdminConfig().getTimeout()); + XxlJobAdminBootstrap.getAdminConfig().getAccessToken(), + XxlJobAdminBootstrap.getAdminConfig().getTimeout()); executorBizRepository.put(address, executorBiz); return executorBiz; diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobCompleteHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobCompleteHelper.java index 3cacbdc5..c54b42a1 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobCompleteHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobCompleteHelper.java @@ -1,7 +1,7 @@ package com.xxl.job.admin.scheduler.thread; import com.xxl.job.admin.scheduler.complete.XxlJobCompleter; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.util.I18nUtil; import com.xxl.job.core.biz.model.HandleCallbackParam; @@ -76,7 +76,7 @@ public class JobCompleteHelper { try { // 任务结果丢失处理:调度记录停留在 "运行中" 状态超过10min,且对应执行器心跳注册失败不在线,则将本地调度主动标记失败; Date losedTime = DateUtil.addMinutes(new Date(), -10); - List losedJobIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findLostJobIds(losedTime); + List losedJobIds = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findLostJobIds(losedTime); if (losedJobIds!=null && losedJobIds.size()>0) { for (Long logId: losedJobIds) { @@ -153,7 +153,7 @@ public class JobCompleteHelper { private ReturnT callback(HandleCallbackParam handleCallbackParam) { // valid log item - XxlJobLog log = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().load(handleCallbackParam.getLogId()); + XxlJobLog log = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().load(handleCallbackParam.getLogId()); if (log == null) { return ReturnT.ofFail( "log item not found."); } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobFailMonitorHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobFailMonitorHelper.java index f6f03b80..e60384be 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobFailMonitorHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobFailMonitorHelper.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.thread; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobLog; import com.xxl.job.admin.scheduler.trigger.TriggerTypeEnum; @@ -38,36 +38,36 @@ public class JobFailMonitorHelper { while (!toStop) { try { - List failLogIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findFailJobLogIds(1000); + List failLogIds = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findFailJobLogIds(1000); if (failLogIds!=null && !failLogIds.isEmpty()) { for (long failLogId: failLogIds) { // lock log - int lockRet = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, 0, -1); + int lockRet = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, 0, -1); if (lockRet < 1) { continue; } - XxlJobLog log = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().load(failLogId); - XxlJobInfo info = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().loadById(log.getJobId()); + XxlJobLog log = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().load(failLogId); + XxlJobInfo info = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().loadById(log.getJobId()); // 1、fail retry monitor if (log.getExecutorFailRetryCount() > 0) { JobTriggerPoolHelper.trigger(log.getJobId(), TriggerTypeEnum.RETRY, (log.getExecutorFailRetryCount()-1), log.getExecutorShardingParam(), log.getExecutorParam(), null); String retryMsg = "

>>>>>>>>>>>"+ I18nUtil.getString("jobconf_trigger_type_retry") +"<<<<<<<<<<<
"; log.setTriggerMsg(log.getTriggerMsg() + retryMsg); - XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(log); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(log); } // 2、fail alarm monitor int newAlarmStatus = 0; // 告警状态:0-默认、-1=锁定状态、1-无需告警、2-告警成功、3-告警失败 if (info != null) { - boolean alarmResult = XxlJobAdminConfig.getAdminConfig().getJobAlarmer().alarm(info, log); + boolean alarmResult = XxlJobAdminBootstrap.getAdminConfig().getJobAlarmer().alarm(info, log); newAlarmStatus = alarmResult?2:3; } else { newAlarmStatus = 1; } - XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, -1, newAlarmStatus); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateAlarmStatus(failLogId, -1, newAlarmStatus); } } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobLogReportHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobLogReportHelper.java index cbb7a715..e46f4e26 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobLogReportHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobLogReportHelper.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.thread; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.model.XxlJobLogReport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -68,7 +68,7 @@ public class JobLogReportHelper { xxlJobLogReport.setSucCount(0); xxlJobLogReport.setFailCount(0); - Map triggerCountMap = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findLogReport(todayFrom, todayTo); + Map triggerCountMap = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findLogReport(todayFrom, todayTo); if (triggerCountMap!=null && triggerCountMap.size()>0) { int triggerDayCount = triggerCountMap.containsKey("triggerDayCount")?Integer.valueOf(String.valueOf(triggerCountMap.get("triggerDayCount"))):0; int triggerDayCountRunning = triggerCountMap.containsKey("triggerDayCountRunning")?Integer.valueOf(String.valueOf(triggerCountMap.get("triggerDayCountRunning"))):0; @@ -81,9 +81,9 @@ public class JobLogReportHelper { } // do refresh - int ret = XxlJobAdminConfig.getAdminConfig().getXxlJobLogReportMapper().update(xxlJobLogReport); + int ret = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogReportMapper().update(xxlJobLogReport); if (ret < 1) { - XxlJobAdminConfig.getAdminConfig().getXxlJobLogReportMapper().save(xxlJobLogReport); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogReportMapper().save(xxlJobLogReport); } } @@ -94,12 +94,12 @@ public class JobLogReportHelper { } // 2、log-clean: switch open & once each day - if (XxlJobAdminConfig.getAdminConfig().getLogretentiondays()>0 + if (XxlJobAdminBootstrap.getAdminConfig().getLogretentiondays()>0 && System.currentTimeMillis() - lastCleanLogTime > 24*60*60*1000) { // expire-time Calendar expiredDay = Calendar.getInstance(); - expiredDay.add(Calendar.DAY_OF_MONTH, -1 * XxlJobAdminConfig.getAdminConfig().getLogretentiondays()); + expiredDay.add(Calendar.DAY_OF_MONTH, -1 * XxlJobAdminBootstrap.getAdminConfig().getLogretentiondays()); expiredDay.set(Calendar.HOUR_OF_DAY, 0); expiredDay.set(Calendar.MINUTE, 0); expiredDay.set(Calendar.SECOND, 0); @@ -109,9 +109,9 @@ public class JobLogReportHelper { // clean expired log List logIds = null; do { - logIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().findClearLogIds(0, 0, clearBeforeTime, 0, 1000); + logIds = XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().findClearLogIds(0, 0, clearBeforeTime, 0, 1000); if (logIds!=null && logIds.size()>0) { - XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().clearLog(logIds); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().clearLog(logIds); } } while (logIds!=null && logIds.size()>0); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java index b025a83a..b91c1c7d 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobRegistryHelper.java @@ -2,7 +2,7 @@ package com.xxl.job.admin.scheduler.thread; import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobRegistry; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.core.biz.model.RegistryParam; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.enums.RegistryConfig; @@ -59,18 +59,18 @@ public class JobRegistryHelper { while (!toStop) { try { // auto registry group - List groupList = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().findByAddressType(0); + List groupList = XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().findByAddressType(0); if (groupList!=null && !groupList.isEmpty()) { // remove dead address (admin/executor) - List ids = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().findDead(RegistryConfig.DEAD_TIMEOUT, new Date()); + List ids = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().findDead(RegistryConfig.DEAD_TIMEOUT, new Date()); if (ids!=null && ids.size()>0) { - XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().removeDead(ids); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().removeDead(ids); } // fresh online address (admin/executor) HashMap> appAddressMap = new HashMap>(); - List list = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().findAll(RegistryConfig.DEAD_TIMEOUT, new Date()); + List list = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().findAll(RegistryConfig.DEAD_TIMEOUT, new Date()); if (list != null) { for (XxlJobRegistry item: list) { if (RegistryConfig.RegistType.EXECUTOR.name().equals(item.getRegistryGroup())) { @@ -104,7 +104,7 @@ public class JobRegistryHelper { group.setAddressList(addressListStr); group.setUpdateTime(new Date()); - XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().update(group); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().update(group); } } } catch (Throwable e) { @@ -160,7 +160,7 @@ public class JobRegistryHelper { @Override public void run() { // 0-fail; 1-save suc; 2-update suc; - int ret = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().registrySaveOrUpdate(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue(), new Date()); + int ret = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().registrySaveOrUpdate(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue(), new Date()); if (ret == 1) { // fresh (add) freshGroupRegistryInfo(registryParam); @@ -191,7 +191,7 @@ public class JobRegistryHelper { registryOrRemoveThreadPool.execute(new Runnable() { @Override public void run() { - int ret = XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryMapper().registryDelete(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue()); + int ret = XxlJobAdminBootstrap.getAdminConfig().getXxlJobRegistryMapper().registryDelete(registryParam.getRegistryGroup(), registryParam.getRegistryKey(), registryParam.getRegistryValue()); if (ret > 0) { // fresh (delete) freshGroupRegistryInfo(registryParam); diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobScheduleHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobScheduleHelper.java index b29d94fd..d1f6f3bf 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobScheduleHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobScheduleHelper.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.thread; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.scheduler.cron.CronExpression; import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.scheduler.scheduler.MisfireStrategyEnum; @@ -51,7 +51,7 @@ public class JobScheduleHelper { logger.info(">>>>>>>>> init xxl-job admin scheduler success."); // pre-read count: treadpool-size * trigger-qps (each trigger cost 50ms, qps = 1000/50 = 20) - int preReadCount = (XxlJobAdminConfig.getAdminConfig().getTriggerPoolFastMax() + XxlJobAdminConfig.getAdminConfig().getTriggerPoolSlowMax()) * 20; + int preReadCount = (XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolFastMax() + XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolSlowMax()) * 20; while (!scheduleThreadToStop) { @@ -65,7 +65,7 @@ public class JobScheduleHelper { boolean preReadSuc = true; try { - conn = XxlJobAdminConfig.getAdminConfig().getDataSource().getConnection(); + conn = XxlJobAdminBootstrap.getAdminConfig().getDataSource().getConnection(); connAutoCommit = conn.getAutoCommit(); conn.setAutoCommit(false); @@ -76,7 +76,7 @@ public class JobScheduleHelper { // 1、pre read long nowTime = System.currentTimeMillis(); - List scheduleList = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().scheduleJobQuery(nowTime + PRE_READ_MS, preReadCount); + List scheduleList = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().scheduleJobQuery(nowTime + PRE_READ_MS, preReadCount); if (scheduleList!=null && scheduleList.size()>0) { // 2、push time-ring for (XxlJobInfo jobInfo: scheduleList) { @@ -139,7 +139,7 @@ public class JobScheduleHelper { // 3、update trigger info for (XxlJobInfo jobInfo: scheduleList) { - XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().scheduleUpdate(jobInfo); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().scheduleUpdate(jobInfo); } } else { diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobTriggerPoolHelper.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobTriggerPoolHelper.java index 874f9d28..9b6f3097 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobTriggerPoolHelper.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/thread/JobTriggerPoolHelper.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.thread; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.scheduler.trigger.TriggerTypeEnum; import com.xxl.job.admin.scheduler.trigger.XxlJobTrigger; import org.slf4j.Logger; @@ -27,7 +27,7 @@ public class JobTriggerPoolHelper { public void start(){ fastTriggerPool = new ThreadPoolExecutor( 10, - XxlJobAdminConfig.getAdminConfig().getTriggerPoolFastMax(), + XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolFastMax(), 60L, TimeUnit.SECONDS, new LinkedBlockingQueue(2000), @@ -46,7 +46,7 @@ public class JobTriggerPoolHelper { slowTriggerPool = new ThreadPoolExecutor( 10, - XxlJobAdminConfig.getAdminConfig().getTriggerPoolSlowMax(), + XxlJobAdminBootstrap.getAdminConfig().getTriggerPoolSlowMax(), 60L, TimeUnit.SECONDS, new LinkedBlockingQueue(5000), diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/trigger/XxlJobTrigger.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/trigger/XxlJobTrigger.java index 4dcfb0d9..0e98be70 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/trigger/XxlJobTrigger.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/scheduler/trigger/XxlJobTrigger.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.scheduler.trigger; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.job.admin.model.XxlJobGroup; import com.xxl.job.admin.model.XxlJobInfo; import com.xxl.job.admin.model.XxlJobLog; @@ -49,7 +49,7 @@ public class XxlJobTrigger { String addressList) { // load data - XxlJobInfo jobInfo = XxlJobAdminConfig.getAdminConfig().getXxlJobInfoMapper().loadById(jobId); + XxlJobInfo jobInfo = XxlJobAdminBootstrap.getAdminConfig().getXxlJobInfoMapper().loadById(jobId); if (jobInfo == null) { logger.warn(">>>>>>>>>>>> trigger fail, jobId invalid,jobId={}", jobId); return; @@ -58,7 +58,7 @@ public class XxlJobTrigger { jobInfo.setExecutorParam(executorParam); } int finalFailRetryCount = failRetryCount>=0?failRetryCount:jobInfo.getExecutorFailRetryCount(); - XxlJobGroup group = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupMapper().load(jobInfo.getJobGroup()); + XxlJobGroup group = XxlJobAdminBootstrap.getAdminConfig().getXxlJobGroupMapper().load(jobInfo.getJobGroup()); // cover addressList if (addressList!=null && addressList.trim().length()>0) { @@ -120,7 +120,7 @@ public class XxlJobTrigger { jobLog.setJobGroup(jobInfo.getJobGroup()); jobLog.setJobId(jobInfo.getId()); jobLog.setTriggerTime(new Date()); - XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().save(jobLog); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().save(jobLog); logger.debug(">>>>>>>>>>> xxl-job trigger start, jobId:{}", jobLog.getId()); // 2、init trigger-param @@ -193,7 +193,7 @@ public class XxlJobTrigger { //jobLog.setTriggerTime(); jobLog.setTriggerCode(triggerResult.getCode()); jobLog.setTriggerMsg(triggerMsgSb.toString()); - XxlJobAdminConfig.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(jobLog); + XxlJobAdminBootstrap.getAdminConfig().getXxlJobLogMapper().updateTriggerInfo(jobLog); logger.debug(">>>>>>>>>>> xxl-job trigger end, jobId:{}", jobLog.getId()); } diff --git a/xxl-job-admin/src/main/java/com/xxl/job/admin/util/I18nUtil.java b/xxl-job-admin/src/main/java/com/xxl/job/admin/util/I18nUtil.java index 0dd8edef..7895565e 100644 --- a/xxl-job-admin/src/main/java/com/xxl/job/admin/util/I18nUtil.java +++ b/xxl-job-admin/src/main/java/com/xxl/job/admin/util/I18nUtil.java @@ -1,6 +1,6 @@ package com.xxl.job.admin.util; -import com.xxl.job.admin.scheduler.conf.XxlJobAdminConfig; +import com.xxl.job.admin.scheduler.config.XxlJobAdminBootstrap; import com.xxl.tool.gson.GsonTool; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,7 +30,7 @@ public class I18nUtil { } try { // build i18n prop - String i18n = XxlJobAdminConfig.getAdminConfig().getI18n(); + String i18n = XxlJobAdminBootstrap.getAdminConfig().getI18n(); String i18nFile = MessageFormat.format("i18n/message_{0}.properties", i18n); // load prop