网络花园……它们是好是坏?

网络花园……它们是好是坏?

在 IIS 中为应用程序池提供多个工作进程有什么缺点吗?它们似乎真的很容易启用,而且(几乎)我读过的所有内容似乎都表明它们很好……那么为什么 IIS 不为每个应用程序池提供 10+ 个工作进程呢?一定有一些不利影响,对吧?

答案1

你的怀疑是对的。Web Gardens 没有缺点是一个巨大的神话,它们会给你带来无穷无尽的问题,但许多人仍然不知道何时应该使用它们。

根据 Chris Adams(来自 IIS 团队)的说法,使用 Web Garden 只有一个原因:让不受 CPU 限制但可执行长时间运行请求的应用程序能够扩展,并且不会用尽工作进程中所有可用的线程。有很多原因导致 Web Garden 不好,但是,人们普遍误以为 Web Garden 没有缺点。

它们会增加系统开销(它们不共享缓存),它们不共享会话(如果切换到另一个进程,用户可能会丢失其会话),InProc 可能会变得混乱。简而言之,它们实际上往往会带来很多麻烦,您不应该在没有充分理由的情况下使用它们。

阅读 Chris 的完整解释:http://blogs.iis.net/chrisad/archive/2006/07/14/1342059.aspx

进一步阅读: http://weblogs.asp.net/owscott/why-you-shouldn-t-use-web-gardens-in-iis-week-24

答案2

多年来,我一直在使用 Web Garden 来开发我的游戏(口袋妖怪宠物&怪物MMORPG) 在 ASP.NET 4.8 Web Forms 中。我使用 Web Garden 从来没有遇到过任何问题。

我的会话状态设置为状态服务器。

这是我的设置和我的游戏

我一直在 Windows Server 2012 中使用 Web Garden,但最近转移到了 Windows Server 2019。但据我所知,我从 2014 年开始就一直使用 Web Garden 模式。

在此处输入图片描述

在此处输入图片描述

相关内容