From 3849d5108425b636719d565e1ebf7d440b2af968 Mon Sep 17 00:00:00 2001 From: jsonwan Date: Tue, 14 Jan 2025 16:59:30 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E5=85=A8=E9=87=8F=E5=8A=A0=E8=BD=BD=E9=80=9F=E5=BA=A6=E4=BC=98?= =?UTF-8?q?=E5=8C=96=20#3363?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.重构部分老代码,降低圈复杂度。 --- .../crontab/service/impl/JobCronNameUtil.java | 13 +++++-------- .../service/impl/QuartzServiceImpl.java | 18 +++++++++--------- 2 files changed, 14 insertions(+), 17 deletions(-) diff --git a/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/JobCronNameUtil.java b/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/JobCronNameUtil.java index 063cd648fc..f51e277eb6 100644 --- a/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/JobCronNameUtil.java +++ b/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/JobCronNameUtil.java @@ -32,32 +32,29 @@ public class JobCronNameUtil { /** * 获取Quartz Job名称 * - * @param appId Job业务ID * @param cronJobId 定时任务ID * @return Quartz Job名称 */ - public static String getJobName(long appId, long cronJobId) { + public static String getJobName(long cronJobId) { return "job_" + cronJobId; } /** * 获取Quartz Job分组 * - * @param appId Job业务ID - * @param cronJobId 定时任务ID + * @param appId Job业务ID * @return Quartz Job分组 */ - public static String getJobGroup(long appId, long cronJobId) { + public static String getJobGroup(long appId) { return "bk_app_" + appId; } /*** * 获取通知Job名称 - * @param appId Job业务ID * @param cronJobId 定时任务ID * @return 通知Job名称 */ - public static String getNotifyJobName(long appId, long cronJobId) { - return getJobName(appId, cronJobId) + "_notify"; + public static String getNotifyJobName(long cronJobId) { + return getJobName(cronJobId) + "_notify"; } } diff --git a/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/QuartzServiceImpl.java b/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/QuartzServiceImpl.java index c0026a27ac..1e979a2186 100644 --- a/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/QuartzServiceImpl.java +++ b/src/backend/job-crontab/service-job-crontab/src/main/java/com/tencent/bk/job/crontab/service/impl/QuartzServiceImpl.java @@ -84,9 +84,9 @@ public boolean deleteJobFromQuartz(long appId, long cronJobId) { if (appId <= 0 || cronJobId <= 0) { return false; } - String jobName = JobCronNameUtil.getJobName(appId, cronJobId); - String jobGroup = JobCronNameUtil.getJobGroup(appId, cronJobId); - String notifyJobName = JobCronNameUtil.getNotifyJobName(appId, cronJobId); + String jobName = JobCronNameUtil.getJobName(cronJobId); + String jobGroup = JobCronNameUtil.getJobGroup(appId); + String notifyJobName = JobCronNameUtil.getNotifyJobName(cronJobId); try { quartzTaskHandler.deleteJob(JobKey.jobKey(jobName, jobGroup)); quartzTaskHandler.deleteJob(JobKey.jobKey(notifyJobName, jobGroup)); @@ -106,8 +106,8 @@ public boolean deleteJobFromQuartz(long appId, long cronJobId) { private void addJobToQuartz(CronJobInfoDTO cronJobInfo) throws SchedulerException { Long appId = cronJobInfo.getAppId(); Long cronJobId = cronJobInfo.getId(); - String jobName = JobCronNameUtil.getJobName(appId, cronJobId); - String jobGroup = JobCronNameUtil.getJobGroup(appId, cronJobId); + String jobName = JobCronNameUtil.getJobName(cronJobId); + String jobGroup = JobCronNameUtil.getJobGroup(appId); QuartzTrigger trigger = buildTrigger(cronJobInfo); QuartzJob job = QuartzJobBuilder.newJob() @@ -132,8 +132,8 @@ private void addJobToQuartz(CronJobInfoDTO cronJobInfo) throws SchedulerExceptio */ private QuartzTrigger buildTrigger(CronJobInfoDTO cronJobInfo) { QuartzTrigger trigger = null; - String jobName = JobCronNameUtil.getJobName(cronJobInfo.getAppId(), cronJobInfo.getId()); - String jobGroup = JobCronNameUtil.getJobGroup(cronJobInfo.getAppId(), cronJobInfo.getId()); + String jobName = JobCronNameUtil.getJobName(cronJobInfo.getId()); + String jobGroup = JobCronNameUtil.getJobGroup(cronJobInfo.getAppId()); if (StringUtils.isNotBlank(cronJobInfo.getCronExpression())) { // 根据cron表达式执行的定时任务 QuartzTriggerBuilder cronTriggerBuilder = QuartzTriggerBuilder.newTrigger() @@ -171,8 +171,8 @@ private QuartzTrigger buildTrigger(CronJobInfoDTO cronJobInfo) { private void addNotifyJobIfNeed(CronJobInfoDTO cronJobInfo) throws SchedulerException { Long appId = cronJobInfo.getAppId(); Long cronJobId = cronJobInfo.getId(); - String notifyJobName = JobCronNameUtil.getNotifyJobName(appId, cronJobId); - String jobGroup = JobCronNameUtil.getJobGroup(appId, cronJobId); + String notifyJobName = JobCronNameUtil.getNotifyJobName(cronJobId); + String jobGroup = JobCronNameUtil.getJobGroup(appId); if (cronJobInfo.getNotifyOffset() > 0) { long notifyTime = 0L; if (StringUtils.isNotBlank(cronJobInfo.getCronExpression())) {