From 1fe3368c5a5f6f4e70e61c330a8fc5d524cad620 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E8=87=AA=E8=BE=BE?= <980324341@qq.com> Date: Thu, 17 Sep 2026 01:55:35 +0800 Subject: [PATCH] =?UTF-8?q?perf(rustfs):=20=E9=87=8D=E8=AF=95=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E9=80=80=E9=81=BF=20500ms=E2=86=92200ms?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 线上高频的重试诱因是 unexpected end of stream——那是**立即失败**(RustFS 重置连接后 OkHttp 读响应即报错),不是等超时,500ms 基本是白等;每天上千次累计十几分钟。 降到 200ms 保留退避语义(真遇服务端过载仍会让步),又不让用户多等。 --- .../nanri/aiimage/config/TransientStorageProperties.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/backend-java/src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java b/backend-java/src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java index 8824cf71..4b830f1c 100644 --- a/backend-java/src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java +++ b/backend-java/src/main/java/com/nanri/aiimage/config/TransientStorageProperties.java @@ -29,7 +29,14 @@ public class TransientStorageProperties { */ private long maxTotalConcurrentOperations = 0; private long acquirePermitTimeoutMillis = 2000; - private long baseRetryDelayMillis = 500; + /** + * 首次重试前的基础退避。 + * + *
线上高频的重试诱因是 `unexpected end of stream`——那是**立即失败**(连接被 RustFS + * 重置后 OkHttp 读响应即报错),不是等超时,所以 500ms 基本是白等:每天上千次累计十几分钟。 + * 降到 200ms 保留退避语义(真遇到服务端过载仍会退让),又不至于让用户等太久。 + */ + private long baseRetryDelayMillis = 200; private long maxRetryDelayMillis = 5000; private long retryJitterMillis = 250; private long failureWindowSeconds = 60;