执行器优雅停机优化
This commit is contained in:
parent
fe97e510be
commit
5368b6917e
|
@ -1430,6 +1430,7 @@ Tips: 历史版本(V1.3.x)目前已经Release至稳定版本, 进入维护阶段
|
||||||
- 16、LRU路由更新不及时问题修复;
|
- 16、LRU路由更新不及时问题修复;
|
||||||
- 17、任务失败告警邮件发送逻辑优化;
|
- 17、任务失败告警邮件发送逻辑优化;
|
||||||
- 18、调度日志排序逻辑调整为按照调度时间倒序,兼容TIDB等主键不连续日志存储组件;
|
- 18、调度日志排序逻辑调整为按照调度时间倒序,兼容TIDB等主键不连续日志存储组件;
|
||||||
|
- 19、执行器优雅停机优化;
|
||||||
- 19、[迭代中]任务线程隔离:
|
- 19、[迭代中]任务线程隔离:
|
||||||
- 执行器测异步响应,不存在阻塞不需要隔离;
|
- 执行器测异步响应,不存在阻塞不需要隔离;
|
||||||
- 调度中心共用单一调度线程池,可能导致调度阻塞需要线程隔离;调度线程池拆分为Fast/Slow两个,针对调度较慢的执行器地址请求,降级使用Slow线程池;考虑是否可以任务级隔离线程池;
|
- 调度中心共用单一调度线程池,可能导致调度阻塞需要线程隔离;调度线程池拆分为Fast/Slow两个,针对调度较慢的执行器地址请求,降级使用Slow线程池;考虑是否可以任务级隔离线程池;
|
||||||
|
|
|
@ -69,7 +69,7 @@ public class XxlJobExecutor {
|
||||||
// init logpath
|
// init logpath
|
||||||
XxlJobFileAppender.initLogPath(logPath);
|
XxlJobFileAppender.initLogPath(logPath);
|
||||||
|
|
||||||
// init admin-client
|
// init invoker, admin-client
|
||||||
initAdminBizList(adminAddresses, accessToken);
|
initAdminBizList(adminAddresses, accessToken);
|
||||||
|
|
||||||
|
|
||||||
|
@ -103,6 +103,9 @@ public class XxlJobExecutor {
|
||||||
|
|
||||||
// destory executor-server
|
// destory executor-server
|
||||||
stopRpcProvider();
|
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(){
|
public static List<AdminBiz> getAdminBizList(){
|
||||||
return adminBizList;
|
return adminBizList;
|
||||||
}
|
}
|
||||||
|
@ -202,12 +213,6 @@ public class XxlJobExecutor {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void stopRpcProvider() {
|
private void stopRpcProvider() {
|
||||||
// stop invoker factory
|
|
||||||
try {
|
|
||||||
XxlRpcInvokerFactory.getInstance().stop();
|
|
||||||
} catch (Exception e) {
|
|
||||||
logger.error(e.getMessage(), e);
|
|
||||||
}
|
|
||||||
// stop provider factory
|
// stop provider factory
|
||||||
try {
|
try {
|
||||||
xxlRpcProviderFactory.stop();
|
xxlRpcProviderFactory.stop();
|
||||||
|
|
Loading…
Reference in New Issue