From bfc73ed21445bfe1a5536c07c058b14315ef0fab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?=
<15040126243@163.com>
Date: Thu, 13 Mar 2025 11:34:26 +0800
Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E5=B0=86crt?=
=?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=AB=AF=E6=9B=BF=E6=8D=A2=E4=B8=BANetty?=
=?UTF-8?q?=E5=AE=A2=E6=88=B7=E7=AB=AF=20=E8=8A=82=E7=BA=A617M=E6=89=93?=
=?UTF-8?q?=E5=8C=85=E5=A4=A7=E5=B0=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 13 ++++-----
ruoyi-common/ruoyi-common-oss/pom.xml | 11 ++------
.../dromara/common/oss/core/OssClient.java | 28 +++++++++++++------
3 files changed, 28 insertions(+), 24 deletions(-)
diff --git a/pom.xml b/pom.xml
index 9742a21f2..45d4ece78 100644
--- a/pom.xml
+++ b/pom.xml
@@ -42,7 +42,6 @@
2.28.22
- 0.31.3
3.3.3
@@ -245,18 +244,18 @@
s3
${aws.sdk.version}
-
-
- software.amazon.awssdk.crt
- aws-crt
- ${aws.crt.version}
-
software.amazon.awssdk
s3-transfer-manager
${aws.sdk.version}
+
+
+ software.amazon.awssdk
+ netty-nio-client
+ ${aws.sdk.version}
+
org.dromara.sms4j
diff --git a/ruoyi-common/ruoyi-common-oss/pom.xml b/ruoyi-common/ruoyi-common-oss/pom.xml
index 18d004f57..190dc5d46 100644
--- a/ruoyi-common/ruoyi-common-oss/pom.xml
+++ b/ruoyi-common/ruoyi-common-oss/pom.xml
@@ -31,11 +31,6 @@
software.amazon.awssdk
s3
-
-
- software.amazon.awssdk
- netty-nio-client
-
software.amazon.awssdk
@@ -54,10 +49,10 @@
-
+
- software.amazon.awssdk.crt
- aws-crt
+ software.amazon.awssdk
+ netty-nio-client
diff --git a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java
index e3b20dde3..41e74969d 100644
--- a/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java
+++ b/ruoyi-common/ruoyi-common-oss/src/main/java/org/dromara/common/oss/core/OssClient.java
@@ -16,10 +16,10 @@ import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider;
import software.amazon.awssdk.core.ResponseInputStream;
import software.amazon.awssdk.core.async.AsyncResponseTransformer;
import software.amazon.awssdk.core.async.BlockingInputStreamAsyncRequestBody;
+import software.amazon.awssdk.http.nio.netty.NettyNioAsyncHttpClient;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.s3.S3AsyncClient;
import software.amazon.awssdk.services.s3.S3Configuration;
-import software.amazon.awssdk.services.s3.crt.S3CrtHttpConfiguration;
import software.amazon.awssdk.services.s3.model.GetObjectResponse;
import software.amazon.awssdk.services.s3.presigner.S3Presigner;
import software.amazon.awssdk.transfer.s3.S3TransferManager;
@@ -84,18 +84,28 @@ public class OssClient {
// MinIO 使用 HTTPS 限制使用域名访问,站点填域名。需要启用路径样式访问
boolean isStyle = !StringUtils.containsAny(properties.getEndpoint(), OssConstant.CLOUD_SERVICE);
- // 创建AWS基于 CRT 的 S3 客户端
- this.client = S3AsyncClient.crtBuilder()
+// // 创建AWS基于 CRT 的 S3 客户端
+// this.client = S3AsyncClient.crtBuilder()
+// .credentialsProvider(credentialsProvider)
+// .endpointOverride(URI.create(getEndpoint()))
+// .region(of())
+// .targetThroughputInGbps(20.0)
+// .minimumPartSizeInBytes(10 * 1025 * 1024L)
+// .checksumValidationEnabled(false)
+// .forcePathStyle(isStyle)
+// .httpConfiguration(S3CrtHttpConfiguration.builder()
+// .connectionTimeout(Duration.ofSeconds(60)) // 设置连接超时
+// .build())
+// .build();
+
+ // 创建AWS基于 Netty 的 S3 客户端
+ this.client = S3AsyncClient.builder()
.credentialsProvider(credentialsProvider)
.endpointOverride(URI.create(getEndpoint()))
.region(of())
- .targetThroughputInGbps(20.0)
- .minimumPartSizeInBytes(10 * 1025 * 1024L)
- .checksumValidationEnabled(false)
.forcePathStyle(isStyle)
- .httpConfiguration(S3CrtHttpConfiguration.builder()
- .connectionTimeout(Duration.ofSeconds(60)) // 设置连接超时
- .build())
+ .httpClient(NettyNioAsyncHttpClient.builder()
+ .connectionTimeout(Duration.ofSeconds(60)).build())
.build();
//AWS基于 CRT 的 S3 AsyncClient 实例用作 S3 传输管理器的底层客户端