首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ASP.NET网络花园-我需要多少工作进程?

ASP.NET网络花园-我需要多少工作进程?
EN

Stack Overflow用户
提问于 2010-01-28 07:47:23
回答 2查看 95.8K关注 0票数 69

决定一个ASP.NET web应用程序允许多少个工作进程的最佳实践是什么?

在我管理的一台服务器上,创建一个新的AppPool默认使用10个(最大)工作进程。其他人建议正常设置是一个。

多个工作进程解决了什么问题?决定多少个工作进程的技术是什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-01-28 08:15:24

工作进程是一种在多个exe上分割网站执行的方法。你这么做有几个原因,一个是如果其中一个工作进程被运行时问题搞砸了,其他的就不会被关闭。例如,如果一个html请求进入,导致进程运行为空,那么只有一个工作处理器正在处理的其他请求才会被终止。另一个例子是,一个请求可能会对同一工作线程处理的其他线程造成阻塞。

只要你需要多少,就做一些负载测试。用力点击这个应用程序,看看只有一个会发生什么。然后再加一些,然后再打一次。在某一时刻,您将达到真正使机器的网络、磁盘、cpu和ram达到饱和的程度。那就是你知道你有正确的平衡的时候。

顺便说一下,您可以通过machine.config文件控制每个工作进程使用的线程数。我相信关键是maxWorkerThreads。

现在,请注意,如果您使用会话,会话状态不会在工作进程之间共享。我通常建议避免使用会话,但这是需要考虑的问题。

无论出于何种意图和目的,您都可以将每个工作进程视为它自己的独立web服务器。除非它们在同一个机器上运行。

票数 65
EN

Stack Overflow用户

发布于 2017-01-03 03:53:30

另一种有意义的情况是,如果您的应用程序包含阻止其并行化的锁,则使用许多工作进程是有意义的。基于GDI+的图像处理就是一个例子。

当我试图为my problem寻找解决方案时,我发现了它。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2151251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档