执行器优雅停机优化

master
xuxueli 6 years ago
parent fe97e510be
commit 5368b6917e
  1. 1
      doc/XXL-JOB官方文档.md
  2. 19
      xxl-job-core/src/main/java/com/xxl/job/core/executor/XxlJobExecutor.java

@ -1430,6 +1430,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
- 16、LRU路由更新不及时问题修复;
- 17、任务失败告警邮件发送逻辑优化;
- 18、调度日志排序逻辑调整为按照调度时间倒序,兼容TIDB等主键不连续日志存储组件;
- 19、执行器优雅停机优化;
- 19、[迭代中]任务线程隔离:
- 执行器测异步响应,不存在阻塞不需要隔离;
- 调度中心共用单一调度线程池,可能导致调度阻塞需要线程隔离;调度线程池拆分为Fast/Slow两个,针对调度较慢的执行器地址请求,降级使用Slow线程池;考虑是否可以任务级隔离线程池;

@ -69,7 +69,7 @@ public class XxlJobExecutor {
// init logpath
XxlJobFileAppender.initLogPath(logPath);
// init admin-client
// init invoker, admin-client
initAdminBizList(adminAddresses, accessToken);
@ -103,6 +103,9 @@ public class XxlJobExecutor {
// destory executor-server
stopRpcProvider();
// destory invoker
stopInvokerFactory();
}
@ -139,6 +142,14 @@ public class XxlJobExecutor {
}
}
}
private void stopInvokerFactory(){
// stop invoker factory
try {
XxlRpcInvokerFactory.getInstance().stop();
} catch (Exception e) {
logger.error(e.getMessage(), e);
}
}
public static List<AdminBiz> getAdminBizList(){
return adminBizList;
}
@ -202,12 +213,6 @@ public class XxlJobExecutor {
}
private void stopRpcProvider() {
// stop invoker factory
try {
XxlRpcInvokerFactory.getInstance().stop();
} catch (Exception e) {
logger.error(e.getMessage(), e);
}
// stop provider factory
try {
xxlRpcProviderFactory.stop();

Loading…
Cancel
Save