if (minioClient == null) { minioClient = new MinioClient(endpoint, port, accessKey, secretKey, false); }
1
zm8m93Q1e5otOC69 2021 年 6 月 21 日
注册个 bean 托管好一些吧,没用过,猜测滴。。
https://blog.csdn.net/qq_33842795/article/details/115912970 |
2
anonydmer 2021 年 6 月 21 日
能不能复用取决于它本身是不是线程安全。 不过通常来讲这种 XXClient 一般都是
|
3
Oktfolio 2021 年 6 月 21 日
bean
|
5
Vegetable 2021 年 6 月 21 日
|
6
HDMItoDP OP @beichenhpy 我看网上的都是注册个 bean 的这种
|
7
X0ray 2021 年 6 月 21 日
不用,可以做一个单例全局使用。上面提到的 bean 不就是默认 singleton 的嘛
|
8
jingslunt 2021 年 6 月 21 日
终于有人开始讨论 minio 了
PS:minio 最近被集成进 harbor operator |
9
qwerthhusn 2021 年 6 月 21 日
不需要,而且不推荐。
这个 SDK 跟很多类似 AWS,阿里云的 SDK 一样,其实就是 HttpClient 套一层。(就是说你可以完全用原生的 HttpClient 做出完整的 Minio 请求,只不过会非常复杂。。尤其是阿里云系的,不用 SDK 很难自己能构造出正确的请求,老是签名错误,而且文档上的说的含糊不清) HttpClient 是带连接复用的,针对 HTTP1.1 还带连接池的。你每次 new 一个 Client 去操作效率非常低,每次都要重建一个新的连接。 |
10
anonydmer 2021 年 6 月 21 日
@HDMItoDP OKHttpClient 内部已经复用连接池了,哪怕是多个 OKHttpClient 实例;所以即使 new 了多个 MinioClient 仍然会享受 OKHttpClient 连接池的福利。 不过正如 @qwerthhusn 兄弟说的不需要也不推荐
|
11
liian2019 2021 年 6 月 21 日
复用,java 里面都是交给 spring 托管
|
12
HDMItoDP OP @qwerthhusn 好的
|