Browse Source

1.ttl线程池包装->TtlRunnable.getRunnable()包装,更彻底

feature/teamB_zz_wgh
wangxianzhang 3 years ago
parent
commit
e53f12d806
  1. 7
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/config/AsyncConfig.java
  2. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java
  3. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcTripReportRecordServiceImpl.java
  4. 2
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccineServiceImpl.java

7
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/config/AsyncConfig.java

@ -1,5 +1,6 @@
package com.epmet.commons.tools.config;
import com.alibaba.ttl.TtlRunnable;
import com.alibaba.ttl.threadpool.TtlExecutors;
import org.slf4j.MDC;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
@ -64,8 +65,9 @@ public class AsyncConfig {
executor.setKeepAliveSeconds(keepAliveSeconds);
// 设置装饰器,使用MDC将runnable进行装饰,实现日志上下文传递到子线程
executor.setTaskDecorator((Runnable r) -> {
// 1.mdc包装,日志追踪
Map<String, String> copyOfContextMap = MDC.getCopyOfContextMap();
return () -> {
Runnable rr = () -> {
try {
if (copyOfContextMap != null && copyOfContextMap.size() > 0) {
MDC.setContextMap(copyOfContextMap);
@ -75,6 +77,9 @@ public class AsyncConfig {
MDC.clear();
}
};
// 2.ttl包装,异步线程上下文透传
return TtlRunnable.get(rr);
});
executor.initialize();
return executor;

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcNatServiceImpl.java

@ -310,7 +310,7 @@ public class IcNatServiceImpl extends BaseServiceImpl<IcNatDao, IcNatEntity> imp
}
}
@Async("executorService")
@Async
@Override
public void execAsyncExcelImport(Path filePath, String importTaskId) {
String userId = null;

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcTripReportRecordServiceImpl.java

@ -334,7 +334,7 @@ public class IcTripReportRecordServiceImpl extends BaseServiceImpl<IcTripReportR
}).collect(Collectors.toList());
}
@Async("executorService")
@Async
@Override
public void execAsyncExcelImport(Path filePath, String importTaskId,String customerId,String userId) {
try {

2
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcVaccineServiceImpl.java

@ -160,7 +160,7 @@ public class IcVaccineServiceImpl extends BaseServiceImpl<IcVaccineDao, IcVaccin
}
}
@Async("executorService")
@Async
@Override
public void execAsyncExcelImport(Path filePath, String importTaskId) {
String userId = null;

Loading…
Cancel
Save