首先,我将描述我的情况。我必须从我的应用程序向多个 API 发出 HTTPS 请求,并且它们应该同时运行。我想知道我是否应该为每个 goroutine 使用一个单独的 HTTP 客户端,或者我可以在所有 goroutine 之间共享一个客户端。当然,我想享受 HTTP 客户端提供的连接重用/池化,但我担心它是线程(又名 goroutine)安全的,并且客户端是否会并发运行请求,或者它们实际上会被排序?
2 回答
扬帆大鱼
TA贡献1799条经验 获得超9个赞
撒科打诨
TA贡献1934条经验 获得超2个赞
另一个问题是您应该使用一个客户端还是每个请求一个客户端。您应该按照https://pkg.go.dev/net/http#pkg-overview使用一个客户端
“客户端和传输对于多个 goroutine 并发使用是安全的,并且为了提高效率应该只创建一次并重复使用”
- 2 回答
- 0 关注
- 177 浏览
添加回答
举报
0/150
提交
取消