.net Http Web请求连接池是每个线程还是所有线程共享同一个池?

问题描述 投票:0回答:1

试图了解Web请求连接池和多线程的工作原理。这个问题来自于最近使用Hangfire进行的开发。我们想限制http请求的最大并发数为10,所以我们使用了默认的连接池限制,即10。但是,我们注意到我们同时发送了超过10个请求,所以我们认为这可能与Hangfire有关,它创建了20个worker。

那么问题来了,Hangfire的worker是什么呢,是一个线程吗?每个worker都有自己的连接池吗? 还是所有work都共享一个连接池?

.net multithreading httprequest connection-pooling hangfire
1个回答
0
投票

你可以改变每个Hangfire服务器启动的默认工人数量。这是Hangfire设置的一部分 (并行性文件)

var options = new BackgroundJobServerOptions { WorkerCount = Environment.ProcessorCount * 5 };
app.UseHangfireServer(options);
© www.soinside.com 2019 - 2024. All rights reserved.