From 6d04e3311e0a49fadec5bb593c64610ce874e07d Mon Sep 17 00:00:00 2001 From: "www.byteblogs.com" <598092184@qq.com> Date: Mon, 12 Jun 2023 23:53:07 +0800 Subject: [PATCH] =?UTF-8?q?feat:=201.5.0-hotfix=201.=20=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../easy/retry/client/core/plugin/RequestHeaderPlugins.java | 4 +++- .../main/java/com/example/demo/TestRetryMethodService.java | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/plugin/RequestHeaderPlugins.java b/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/plugin/RequestHeaderPlugins.java index 5d09d025..0acea2c5 100644 --- a/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/plugin/RequestHeaderPlugins.java +++ b/easy-retry-client-core/src/main/java/com/aizuda/easy/retry/client/core/plugin/RequestHeaderPlugins.java @@ -40,9 +40,11 @@ public class RequestHeaderPlugins { LogUtils.warn(log, "entry method time is null. easyRetryId:[{}]", retryHeader.getEasyRetryId()); } else { long transmitTime = retryHeader.getDdl() - (callRemoteTime - entryMethodTime); - LogUtils.info(log, "RPC传递header头 callRemoteTime:[{}] - entryMethodTime:[{}] = transmitTime:[{}]", entryMethodTime, callRemoteTime, transmitTime); + LogUtils.info(log, "RPC传递header头 callRemoteTime:[{}] - entryMethodTime:[{}] = transmitTime:[{}]", callRemoteTime, entryMethodTime, transmitTime); if (transmitTime > 0) { retryHeader.setDdl(transmitTime); + // 重新刷新进入时间 + RetrySiteSnapshot.setEntryMethodTime(System.currentTimeMillis()); } else { throw new EasyRetryClientException("调用链超时, 不在继续调用后面请求"); } diff --git a/example/src/main/java/com/example/demo/TestRetryMethodService.java b/example/src/main/java/com/example/demo/TestRetryMethodService.java index c53f4a5f..8917c94f 100644 --- a/example/src/main/java/com/example/demo/TestRetryMethodService.java +++ b/example/src/main/java/com/example/demo/TestRetryMethodService.java @@ -22,8 +22,10 @@ public class TestRetryMethodService { return "测试自定义重试方法"; } - @Retryable(scene = "testRetryHeaderTransfer", retryStrategy = RetryType.ONLY_LOCAL) + @Retryable(scene = "testRetryHeaderTransfer", retryStrategy = RetryType.ONLY_LOCAL, localTimes = 1) public String testRetryHeaderTransfer(String p) { + demoClient.get(); + demoClient.get(); demoClient.get(); double i = 1 / 0; return "测试重试流量标识服务间传递";