diff --git a/easy-retry-client/easy-retry-client-common/pom.xml b/easy-retry-client/easy-retry-client-common/pom.xml index 48def0bc..6271dbe7 100644 --- a/easy-retry-client/easy-retry-client-common/pom.xml +++ b/easy-retry-client/easy-retry-client-common/pom.xml @@ -41,6 +41,11 @@ com.aizuda easy-retry-common-server-api + + org.springframework.boot + spring-boot-configuration-processor + true + diff --git a/easy-retry-client/easy-retry-client-job-core/src/main/java/com/aizuda/easy/retry/client/job/core/cache/ThreadPoolCache.java b/easy-retry-client/easy-retry-client-job-core/src/main/java/com/aizuda/easy/retry/client/job/core/cache/ThreadPoolCache.java index 6828a9ae..75be2f90 100644 --- a/easy-retry-client/easy-retry-client-job-core/src/main/java/com/aizuda/easy/retry/client/job/core/cache/ThreadPoolCache.java +++ b/easy-retry-client/easy-retry-client-job-core/src/main/java/com/aizuda/easy/retry/client/job/core/cache/ThreadPoolCache.java @@ -29,7 +29,7 @@ public class ThreadPoolCache { }; ThreadPoolExecutor threadPoolExecutor = supplier.get(); - CACHE_THREAD_POOL.putIfAbsent(taskBatchId, supplier.get()); + CACHE_THREAD_POOL.putIfAbsent(taskBatchId, threadPoolExecutor); return threadPoolExecutor; } diff --git a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/AbstractRegister.java b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/AbstractRegister.java index f600ed4b..2897af1f 100644 --- a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/AbstractRegister.java +++ b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/AbstractRegister.java @@ -35,6 +35,7 @@ public abstract class AbstractRegister implements Register, Lifecycle { protected void refreshExpireAt(ServerNode serverNode) { try { + serverNode.setExpireAt(getExpireAt()); serverNodeMapper.insertOrUpdate(serverNode); // 刷新本地缓存过期时间 CacheRegisterTable.refreshExpireAt(serverNode.getGroupName(), serverNode); @@ -56,13 +57,12 @@ public abstract class AbstractRegister implements Register, Lifecycle { serverNode.setNodeType(getNodeType()); serverNode.setCreateDt(LocalDateTime.now()); serverNode.setContextPath(context.getContextPath()); - serverNode.setExpireAt(getExpireAt(context)); serverNode.setExtAttrs(context.getExtAttrs()); return serverNode; } - protected abstract LocalDateTime getExpireAt(RegisterContext context); + protected abstract LocalDateTime getExpireAt(); protected abstract boolean doRegister(RegisterContext context, ServerNode serverNode); diff --git a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ClientRegister.java b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ClientRegister.java index 4b462094..b162eb9b 100644 --- a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ClientRegister.java +++ b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ClientRegister.java @@ -41,11 +41,10 @@ public class ClientRegister extends AbstractRegister implements Runnable { @Override protected void beforeProcessor(RegisterContext context) { - } @Override - protected LocalDateTime getExpireAt(RegisterContext context) { + protected LocalDateTime getExpireAt() { return LocalDateTime.now().plusSeconds(DELAY_TIME); } @@ -93,14 +92,12 @@ public class ClientRegister extends AbstractRegister implements Runnable { } } - }catch (InterruptedException e) { - LogUtils.info(log, "[{}] thread stop.", Thread.currentThread().getName()); } catch (Exception e) { LogUtils.error(log, "client refresh expireAt error."); } finally { // 防止刷的过快 try { - TimeUnit.MILLISECONDS.sleep(1000); + TimeUnit.MILLISECONDS.sleep(5000); } catch (InterruptedException ignored) { } } diff --git a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ServerRegister.java b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ServerRegister.java index 5644b0a7..38507d03 100644 --- a/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ServerRegister.java +++ b/easy-retry-server/easy-retry-server-common/src/main/java/com/aizuda/easy/retry/server/common/register/ServerRegister.java @@ -70,7 +70,7 @@ public class ServerRegister extends AbstractRegister { } @Override - protected LocalDateTime getExpireAt(RegisterContext context) { + protected LocalDateTime getExpireAt() { return LocalDateTime.now().plusSeconds(DELAY_TIME); }