Procházet zdrojové kódy

精简项目,取消第三方依赖,如 commons-collections4 ;

xuxueli před 6 roky
rodič
revize
bce7cc4676

+ 1 - 0
doc/XXL-JOB官方文档.md Zobrazit soubor

@@ -1397,6 +1397,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
1397 1397
 - 2、任务告警逻辑调整,改为通过扫描失败日志方式触发。一方面精确扫描失败任务,降低扫描范围;另一方面取消内存队列,降低线程内存消耗;
1398 1398
 - 3、记住密码功能优化,选中时永久记住;非选中时关闭浏览器即登出;
1399 1399
 - 4、项目依赖升级至较新稳定版本,如spring、jackson、groovy等等;
1400
+- 5、精简项目,取消第三方依赖,如 commons-collections4 ;
1400 1401
 - [迭代中]注册中心优化,实时性注册发现:心跳注册间隔10s,refresh失败则首次注册并立即更新注册信息,心跳类似;30s过期销毁;
1401 1402
 - [迭代中]脚本任务,支持数据参数,新版本仅支持单参数不支持需要兼容;
1402 1403
 - [迭代中]提供执行器Docker镜像;

+ 0 - 1
pom.xml Zobrazit soubor

@@ -36,7 +36,6 @@
36 36
 		<junit.version>4.12</junit.version>
37 37
 
38 38
 		<commons-exec.version>1.3</commons-exec.version>
39
-		<commons-collections4.version>4.2</commons-collections4.version>
40 39
 		<commons-lang3.version>3.8.1</commons-lang3.version>
41 40
 
42 41
 		<groovy.version>2.5.5</groovy.version>

+ 0 - 8
xxl-job-admin/pom.xml Zobrazit soubor

@@ -88,12 +88,6 @@
88 88
 			<version>${mysql-connector-java.version}</version>
89 89
 		</dependency>
90 90
 
91
-		<!-- commons-collections4 -->
92
-		<dependency>
93
-			<groupId>org.apache.commons</groupId>
94
-			<artifactId>commons-collections4</artifactId>
95
-			<version>${commons-collections4.version}</version>
96
-		</dependency>
97 91
 		<!-- commons-lang3 -->
98 92
 		<dependency>
99 93
 			<groupId>org.apache.commons</groupId>
@@ -102,8 +96,6 @@
102 96
 		</dependency>
103 97
 
104 98
 
105
-
106
-
107 99
 		<!-- quartz :quartz-2.2.3/c3p0-0.9.1.1/slf4j-api-1.6.6 -->
108 100
 		<dependency>
109 101
 			<groupId>org.quartz-scheduler</groupId>

+ 1 - 3
xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobGroupController.java Zobrazit soubor

@@ -3,13 +3,11 @@ package com.xxl.job.admin.controller;
3 3
 import com.xxl.job.admin.core.conf.XxlJobAdminConfig;
4 4
 import com.xxl.job.admin.core.model.XxlJobGroup;
5 5
 import com.xxl.job.admin.core.model.XxlJobRegistry;
6
-import com.xxl.job.admin.core.schedule.XxlJobDynamicScheduler;
7 6
 import com.xxl.job.admin.core.util.I18nUtil;
8 7
 import com.xxl.job.admin.dao.XxlJobGroupDao;
9 8
 import com.xxl.job.admin.dao.XxlJobInfoDao;
10 9
 import com.xxl.job.core.biz.model.ReturnT;
11 10
 import com.xxl.job.core.enums.RegistryConfig;
12
-import org.apache.commons.collections4.CollectionUtils;
13 11
 import org.apache.commons.lang3.StringUtils;
14 12
 import org.springframework.stereotype.Controller;
15 13
 import org.springframework.ui.Model;
@@ -92,7 +90,7 @@ public class JobGroupController {
92 90
 			// 0=自动注册
93 91
 			List<String> registryList = findRegistryByAppName(xxlJobGroup.getAppName());
94 92
 			String addressListStr = null;
95
-			if (CollectionUtils.isNotEmpty(registryList)) {
93
+			if (registryList!=null && !registryList.isEmpty()) {
96 94
 				Collections.sort(registryList);
97 95
 				addressListStr = StringUtils.join(registryList, ",");
98 96
 			}

+ 1 - 4
xxl-job-admin/src/main/java/com/xxl/job/admin/core/thread/JobFailMonitorHelper.java Zobrazit soubor

@@ -7,14 +7,11 @@ import com.xxl.job.admin.core.model.XxlJobLog;
7 7
 import com.xxl.job.admin.core.trigger.TriggerTypeEnum;
8 8
 import com.xxl.job.admin.core.util.I18nUtil;
9 9
 import com.xxl.job.core.biz.model.ReturnT;
10
-import org.apache.commons.collections4.CollectionUtils;
11 10
 import org.slf4j.Logger;
12 11
 import org.slf4j.LoggerFactory;
13 12
 import org.springframework.mail.javamail.MimeMessageHelper;
14 13
 
15
-import javax.mail.MessagingException;
16 14
 import javax.mail.internet.MimeMessage;
17
-import java.io.UnsupportedEncodingException;
18 15
 import java.text.MessageFormat;
19 16
 import java.util.Arrays;
20 17
 import java.util.HashSet;
@@ -50,7 +47,7 @@ public class JobFailMonitorHelper {
50 47
 					try {
51 48
 
52 49
 						List<Integer> failLogIds = XxlJobAdminConfig.getAdminConfig().getXxlJobLogDao().findFailJobLogIds(1000);
53
-						if (CollectionUtils.isNotEmpty(failLogIds)) {
50
+						if (failLogIds!=null && !failLogIds.isEmpty()) {
54 51
 							for (int failLogId: failLogIds) {
55 52
 
56 53
 								// lock log

+ 2 - 4
xxl-job-admin/src/main/java/com/xxl/job/admin/core/thread/JobRegistryMonitorHelper.java Zobrazit soubor

@@ -3,9 +3,7 @@ package com.xxl.job.admin.core.thread;
3 3
 import com.xxl.job.admin.core.conf.XxlJobAdminConfig;
4 4
 import com.xxl.job.admin.core.model.XxlJobGroup;
5 5
 import com.xxl.job.admin.core.model.XxlJobRegistry;
6
-import com.xxl.job.admin.core.schedule.XxlJobDynamicScheduler;
7 6
 import com.xxl.job.core.enums.RegistryConfig;
8
-import org.apache.commons.collections4.CollectionUtils;
9 7
 import org.apache.commons.lang3.StringUtils;
10 8
 import org.slf4j.Logger;
11 9
 import org.slf4j.LoggerFactory;
@@ -38,7 +36,7 @@ public class JobRegistryMonitorHelper {
38 36
 					try {
39 37
 						// auto registry group
40 38
 						List<XxlJobGroup> groupList = XxlJobAdminConfig.getAdminConfig().getXxlJobGroupDao().findByAddressType(0);
41
-						if (CollectionUtils.isNotEmpty(groupList)) {
39
+						if (groupList!=null && !groupList.isEmpty()) {
42 40
 
43 41
 							// remove dead address (admin/executor)
44 42
 							XxlJobAdminConfig.getAdminConfig().getXxlJobRegistryDao().removeDead(RegistryConfig.DEAD_TIMEOUT);
@@ -67,7 +65,7 @@ public class JobRegistryMonitorHelper {
67 65
 							for (XxlJobGroup group: groupList) {
68 66
 								List<String> registryList = appAddressMap.get(group.getAppName());
69 67
 								String addressListStr = null;
70
-								if (CollectionUtils.isNotEmpty(registryList)) {
68
+								if (registryList!=null && !registryList.isEmpty()) {
71 69
 									Collections.sort(registryList);
72 70
 									addressListStr = StringUtils.join(registryList, ",");
73 71
 								}

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/admin/core/trigger/XxlJobTrigger.java Zobrazit soubor

@@ -13,7 +13,6 @@ import com.xxl.job.core.biz.model.TriggerParam;
13 13
 import com.xxl.job.core.enums.ExecutorBlockStrategyEnum;
14 14
 import com.xxl.rpc.util.IpUtil;
15 15
 import com.xxl.rpc.util.ThrowableUtil;
16
-import org.apache.commons.collections4.CollectionUtils;
17 16
 import org.apache.commons.lang3.StringUtils;
18 17
 import org.slf4j.Logger;
19 18
 import org.slf4j.LoggerFactory;
@@ -64,7 +63,8 @@ public class XxlJobTrigger {
64 63
             }
65 64
         }
66 65
         if (ExecutorRouteStrategyEnum.SHARDING_BROADCAST==ExecutorRouteStrategyEnum.match(jobInfo.getExecutorRouteStrategy(), null)
67
-                && CollectionUtils.isNotEmpty(group.getRegistryList()) && shardingParam==null) {
66
+                && group.getRegistryList()!=null && !group.getRegistryList().isEmpty()
67
+                && shardingParam==null) {
68 68
             for (int i = 0; i < group.getRegistryList().size(); i++) {
69 69
                 processTrigger(group, jobInfo, finalFailRetryCount, triggerType, i, group.getRegistryList().size());
70 70
             }
@@ -118,7 +118,7 @@ public class XxlJobTrigger {
118 118
         // 3、init address
119 119
         String address = null;
120 120
         ReturnT<String> routeAddressResult = null;
121
-        if (CollectionUtils.isNotEmpty(group.getRegistryList())) {
121
+        if (group.getRegistryList()!=null && !group.getRegistryList().isEmpty()) {
122 122
             if (ExecutorRouteStrategyEnum.SHARDING_BROADCAST == executorRouteStrategyEnum) {
123 123
                 if (index < group.getRegistryList().size()) {
124 124
                     address = group.getRegistryList().get(index);

+ 3 - 4
xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java Zobrazit soubor

@@ -13,7 +13,6 @@ import com.xxl.job.admin.service.XxlJobService;
13 13
 import com.xxl.job.core.biz.model.ReturnT;
14 14
 import com.xxl.job.core.enums.ExecutorBlockStrategyEnum;
15 15
 import com.xxl.job.core.glue.GlueTypeEnum;
16
-import org.apache.commons.collections4.CollectionUtils;
17 16
 import org.apache.commons.lang3.StringUtils;
18 17
 import org.apache.commons.lang3.time.DateUtils;
19 18
 import org.apache.commons.lang3.time.FastDateFormat;
@@ -287,9 +286,9 @@ public class XxlJobServiceImpl implements XxlJobService {
287 286
 		Set<String> executerAddressSet = new HashSet<String>();
288 287
 		List<XxlJobGroup> groupList = xxlJobGroupDao.findAll();
289 288
 
290
-		if (CollectionUtils.isNotEmpty(groupList)) {
289
+		if (groupList!=null && !groupList.isEmpty()) {
291 290
 			for (XxlJobGroup group: groupList) {
292
-				if (CollectionUtils.isNotEmpty(group.getRegistryList())) {
291
+				if (group.getRegistryList()!=null && !group.getRegistryList().isEmpty()) {
293 292
 					executerAddressSet.addAll(group.getRegistryList());
294 293
 				}
295 294
 			}
@@ -325,7 +324,7 @@ public class XxlJobServiceImpl implements XxlJobService {
325 324
 		int triggerCountFailTotal = 0;
326 325
 
327 326
 		List<Map<String, Object>> triggerCountMapAll = xxlJobLogDao.triggerCountByDay(startDate, endDate);
328
-		if (CollectionUtils.isNotEmpty(triggerCountMapAll)) {
327
+		if (triggerCountMapAll!=null && triggerCountMapAll.size()>0) {
329 328
 			for (Map<String, Object> item: triggerCountMapAll) {
330 329
 				String day = String.valueOf(item.get("triggerDay"));
331 330
 				int triggerDayCount = Integer.valueOf(String.valueOf(item.get("triggerDayCount")));