网站地址怎么申请注册,wordpress 登陆白屏,河南股票配资网站建设,海珠营销型网站建设公司本文为大家介绍有关c#(asp.net)线程配置的相关知识#xff0c;有需要的朋友可以参考下。同一时刻只能发起的工作线程数量。1、(maxWorkerThreads * CPU逻辑数量)-minFreeThreads比如2个CPU默认配置maxWorkerThreads100#xff0c;minFreeThreads176#xff0c;则同时最大只能…本文为大家介绍有关c#(asp.net)线程配置的相关知识有需要的朋友可以参考下。同一时刻只能发起的工作线程数量。1、(maxWorkerThreads * CPU逻辑数量)-minFreeThreads比如2个CPU默认配置maxWorkerThreads100minFreeThreads176则同时最大只能有24个工作线程。(这里不管代码示例:这个配置的值经过测试不管此处maxconnection为多少最终都是从上面的计算公式计算出来)2、maxconnection这个值是每秒可以支持的线程数。(但实际每秒可以并行运行的线程为(maxWorkerThreads * CPU逻辑数量)-minFreeThreads的结果)一般要求支持并发量每个并发请求都很耗时的情况下就需要设置该值为对应的并发量(有这么多线程来处理)但线程多了切换也很耗服务器资源实际情况往往不一定请求都很耗时所以根据实际情况调整。3、maxWorkerThreads是最大工作线程默认100我觉得再非高并发下还是可以4、minWorkerThreads是最小工作线程由于托管线程启动比较耗时根据实验结果40秒启动了18个线程大概接近官方说的每秒接近2个。由于线程开销比较耗时因此可以初始化到正常情况下的最低支持并发数量。比如我们平台白天最少有10个并发则可以设置最小线程为5(2个CPU)或者服务端可能会遇到瞬间的超大并发量的请求则可设置默认最小工作线程更大一点可以快速处理请求。minWorkerThreads只对递增线程有影响不影响稳定后的并发量。5、最小空闲线程minFreeThreads参数的配置有的官方资料建议配置成88*N的数量(如果maxWorkerThreads为100的情况)因为说为了留足够的空闲线程给系统用但是经过测试发现高压下缺空闲线程真的空闲起来了根本没有用因此我觉得应该把这个值设置小一点比如设置为80(maxWorkerThreads为100的情况)就会留下100*2-80120个最大连接在高压下就能建立120个线程速度和效率会很快。注意点1、CPU逻辑数量按照物理CPU数量如果CPU是超线程(多核)会再乘以22、同一时间可处理量不代表每秒可处理量比如同一时间可以处理20个可能每秒能处理200个因为每个请求只要0.1秒。3、注意配置节点中processModel里的maxWorkerThreads、maxIoThreads和minWorkerThreads、minIoThreads都只配置单CPU逻辑数量的值计算时会自动乘以CPU逻辑数量。4、配置节点包括System.web节点下代码示例:System.web同级节点下代码示例:5、获取参数代码代码示例:string result string.Empty;int maxWorkThread 0;int maxIOThread 0;int minWorkThread 0;int minIOThread 0;int workThread 0;int completeThread 0;ThreadPool.GetMaxThreads(out maxWorkThread, out maxIOThread);ThreadPool.GetMinThreads(out minWorkThread, out minIOThread);ThreadPool.GetAvailableThreads(out workThread, out completeThread);result DateTime.Now.ToString() rn;result 最大工作线程 maxWorkThread 最大IO线程 maxIOThread rn;result 最小工作线程 minWorkThread 最小IO线程 minIOThread rn;result 可用工作线程 workThread 可用IO线程 completeThread rn;result rn;(记录result未使用StringBuilder临时用一下)。