ソースを参照

任务日志查询速度优化,百万级别日志量搜索速度提升1000倍;

xuxueli 7 年 前
コミット
5ae12fdb1a
共有3 個のファイルを変更した10 個の追加10 個の削除を含む
  1. 4 4
      doc/XXL-JOB官方文档.md
  2. 2 1
      doc/db/tables_xxl_job.sql
  3. 4 5
      xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java

+ 4 - 4
doc/XXL-JOB官方文档.md ファイルの表示

@@ -1194,6 +1194,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
1194 1194
 - 6、Glue(Shell) 等脚本任务支持失败重试;
1195 1195
 - 7、告警邮箱支持SSL配置;
1196 1196
 - 8、Window机器下File.separator不兼容问题修复;
1197
+- 9、任务日志查询速度优化,百万级别日志量搜索速度提升1000倍;
1197 1198
 
1198 1199
 
1199 1200
 ### TODO LIST
@@ -1218,10 +1219,9 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
1218 1219
 - 19、提供多版本执行器:不依赖容器版本、不内嵌Jetty版本(通过配置executoraddress替换jetty通讯)等;
1219 1220
 - 20、注册中心支持扩展,除默认基于DB之外,支持扩展接入第三方注册中心如zk、eureka等;
1220 1221
 - 21、依赖Core内部国际化处理;
1221
-- 22、大数据量下任务日志分页优化,时间选择组件支持清空功能可提升速度;
1222
-- 23、故障转移、失败重试等策略,规范化合并归类;
1223
-- 24、流程任务,支持参数传递;
1224
-- 25、SimpleTrigger 支持;
1222
+- 22、故障转移、失败重试等策略,规范化合并归类;
1223
+- 23、流程任务,支持参数传递;
1224
+- 24、SimpleTrigger 支持;
1225 1225
 
1226 1226
 
1227 1227
 ## 七、其他

+ 2 - 1
doc/db/tables_xxl_job.sql ファイルの表示

@@ -185,7 +185,8 @@ CREATE TABLE `XXL_JOB_QRTZ_TRIGGER_LOG` (
185 185
   `handle_time` datetime DEFAULT NULL COMMENT '执行-时间',
186 186
   `handle_code` int(11) NOT NULL COMMENT '执行-状态',
187 187
   `handle_msg` varchar(2048) DEFAULT NULL COMMENT '执行-日志',
188
-  PRIMARY KEY (`id`)
188
+  PRIMARY KEY (`id`),
189
+  KEY `I_trigger_time` (`trigger_time`)
189 190
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
190 191
 
191 192
 CREATE TABLE `XXL_JOB_QRTZ_TRIGGER_LOGGLUE` (

+ 4 - 5
xxl-job-admin/src/main/java/com/xxl/job/admin/service/impl/XxlJobServiceImpl.java ファイルの表示

@@ -6,7 +6,6 @@ import com.xxl.job.admin.core.model.XxlJobInfo;
6 6
 import com.xxl.job.admin.core.route.ExecutorRouteStrategyEnum;
7 7
 import com.xxl.job.admin.core.schedule.XxlJobDynamicScheduler;
8 8
 import com.xxl.job.admin.core.util.I18nUtil;
9
-import com.xxl.job.admin.core.util.LocalCacheUtil;
10 9
 import com.xxl.job.admin.dao.XxlJobGroupDao;
11 10
 import com.xxl.job.admin.dao.XxlJobInfoDao;
12 11
 import com.xxl.job.admin.dao.XxlJobLogDao;
@@ -324,12 +323,12 @@ public class XxlJobServiceImpl implements XxlJobService {
324 323
 	private static final String TRIGGER_CHART_DATA_CACHE = "trigger_chart_data_cache";
325 324
 	@Override
326 325
 	public ReturnT<Map<String, Object>> chartInfo(Date startDate, Date endDate) {
327
-		// get cache
326
+		/*// get cache
328 327
 		String cacheKey = TRIGGER_CHART_DATA_CACHE + "_" + startDate.getTime() + "_" + endDate.getTime();
329 328
 		Map<String, Object> chartInfo = (Map<String, Object>) LocalCacheUtil.get(cacheKey);
330 329
 		if (chartInfo != null) {
331 330
 			return new ReturnT<Map<String, Object>>(chartInfo);
332
-		}
331
+		}*/
333 332
 
334 333
 		// process
335 334
 		List<String> triggerDayList = new ArrayList<String>();
@@ -376,8 +375,8 @@ public class XxlJobServiceImpl implements XxlJobService {
376 375
 		result.put("triggerCountSucTotal", triggerCountSucTotal);
377 376
 		result.put("triggerCountFailTotal", triggerCountFailTotal);
378 377
 
379
-		// set cache
380
-		LocalCacheUtil.set(cacheKey, result, 60*1000);     // cache 60s
378
+		/*// set cache
379
+		LocalCacheUtil.set(cacheKey, result, 60*1000);     // cache 60s*/
381 380
 
382 381
 		return new ReturnT<Map<String, Object>>(result);
383 382
 	}