标签: web-garden

w3wp.exe的多个实例

我不明白为什么当我只有一个网站和一个应用程序池时,任务管理器中有两个ASP.NET w3wp进程.为什么有两个进程在运行?我用Google搜索了这个并查看了MSDN但找不到答案.

我正在尝试调试应用程序中的内存泄漏.我理解线程和多线程生活在一个进程中的概念,但我不明白为什么有多个进程.

我特别询问哪些方案可能导致多个进程运行.

asp.net iis web-garden

10
推荐指数
1
解决办法
8201
查看次数

IIS,多个CPU核心,应用程序池和工作进程 - 单个站点的最佳配置?

我们使用Kentico CMS,我与他们交换了关于网络花园部署的电子邮件.

我们在具有8个CPU核心的服务器上运行单个站点.在与Kentico的咨询热线,我们没有改变应用程序池Web园从默认即它被设置为1的工作进程的最大数设定.

我们的经验是,该网站只使用其中一个cpu核心 - 其他人都闲置.当我通过电子邮件向他们发送电子邮件时,他们的回答是操作系统/ IIS会处理此问题并根据需要使用其他核心,即使应用程序池只有一个工作进程.

现在,我非常尊重Kentico的人,但这对我来说似乎不对?

当然,如果我们想要使用所有核心,我们需要允许八个工作进程(并在SQL服务器中实现会话状态存储)?

非常感谢

托尼

iis worker-process application-pool web-garden kentico

9
推荐指数
1
解决办法
4972
查看次数

IIS Web Garden的优点/缺点

什么时候需要IIS Web Garden功能.什么是专业和骗局?

asp.net iis web-garden

9
推荐指数
1
解决办法
1万
查看次数

IIS Web Garden中的Singleton对象

我在asp.net应用程序中有很多Singleton实现,并且出于某些性能原因希望将我的应用程序移动到IIS Web Garden环境.

CMIIW,使用n个工作进程迁移到IIS Web Garden,每个工作进程中将创建一个单独的对象,这使得它不再是单个对象,因为n > 1.

我可以在IIS Web Garden中再次制作所有这些单例对象吗?

asp.net singleton worker-process web-garden

6
推荐指数
1
解决办法
7320
查看次数

使用Web Garden模拟Web Farm会话问题?

我刚刚在IIS应用程序池中偶然发现了"Web Garden"的概念.也就是说,当多个进程服务于同一网页时.据我所知,这意味着ASP.NET InProc会话与Web场具有相同的问题.

我的问题是,假设您的生产环境是一个Web场,但您的开发/测试环境不是,那么在dev/test中设置"Web Garden"是否有帮助?我认为这有助于及早发现任何多进程/服务器问题,或者至少确认一切都按预期工作.

asp.net web-farm web-garden iis-7.5

6
推荐指数
1
解决办法
714
查看次数

IIS和Web园配置

允许IIS为每个应用程序池生成多个工作进程(Web-garden配置)是否具有显着的性能优势.什么perfmon计数器表明这可能是一个好主意?

我知道会话状态必须用完,但还有其他问题吗?

iis-7 web-garden

5
推荐指数
1
解决办法
2万
查看次数

IIS Web园林和性能

在IIS中配置Web园区是否有任何性能优势?

有人有任何现实生活中的例子?

iis performance web-garden

5
推荐指数
1
解决办法
3483
查看次数

在Web Gardens中添加动态路由

我正在向RouteTable动态添加路由,但更新不会传播到其他进程:

using (RouteTable.Routes.GetWriteLock())
{
    RouteTable.Routes.MapPageRoute(
        String.Format("_{0}", routeName), 
        routeName, 
        "~/Template.aspx", 
        true, 
        new RouteValueDictionary {{"page", routeName}});
}
Run Code Online (Sandbox Code Playgroud)

这正确地创建了正确的路由,因为我有时可以访问它,但是如果切换到新进程或稍后再尝试,我就无法访问该页面.如果我然后重新启动应用程序池,它工作正常.此外,如果我等待足够长的时间,几个小时,当流程被回收,路线工作.

我认为这是在一个进程上创建路由的结果,并且仅在未来的进程回收中.

干草关于如何推动路线更新的想法?

asp.net routing webforms url-rewriting web-garden

5
推荐指数
1
解决办法
83
查看次数

仅在Web Garden模式下出现500.19错误

我的ASP.NET Web应用程序在IIS 7.5下运行正常.但我想确保它已准备好在Web场中运行.所以我在我的开发机上启用了web garden.(在应用程序池中设置Maximum Worker Processes = 2.)

点击该网站似乎没问题,但在任何AJAX请求,我得到500.19错误.错误如下:

无法访问请求的页面,因为页面的相关配置数据无效.

无法使用组合键属性'statusCode,subStatusCode'分别设置为'404,-1'来添加类型'error'的重复集合条目

在我的网络配置中,我有这个:

<system.webServer>
  <httpErrors>
    <error statusCode="404" path="Home/NotFound" />
  </httpErrors>
Run Code Online (Sandbox Code Playgroud)

看起来很好,我想需要它.但为了好玩,我删除了httpErrors部分.然后我得到:

无法连接到远程服务器

当然,我查看了MS的500.19错误故障排除.但我猜这个错误是一个红鲱鱼.这个问题与我的应用程序池或我的代码有关,或者与消息告诉我的内容有关.正如我所说,一切都运行得很好,有1个Max Worker Process.

有任何想法吗?

更新:我已经意识到我提到的第二个错误"无法连接到远程服务器"是由我的应用程序引起的真正错误.因此web.config中的<error>元素是500.19错误的原因(掩盖了真正的错误).也许我不需要这个元素,因为我在system.web中有一个类似的元素,它本身似乎有所需的影响.

问题解决了.但是,我仍然想知道为什么在单一工作模式下没有问题,并且它在Web园模式中中断了?

web-garden iis-7.5

4
推荐指数
1
解决办法
2243
查看次数

IIS Web-Garden强制进程初始化是否可行?

我们有一个在IIS Web-Garden中运行的ASP.Net Web应用程序 - 它被配置为最多分配四个进程.在我们的Web应用程序中,第一个访问该站点的用户会导致加载所有缓存的项目.由于我们在IIS Web-Garden中运行,因此最终需要最多四个用户为四个Web-Garden进程中的每一个构建缓存.这个缓存构建需要30-40秒,我们试图让它更快,但不太可能再改进它.

这是不可接受的,我们的任务是让所有人都能快速访问网站(无需等待缓存初始化).我想使用一种抓取网站来预热缓存的解决方案.问题是Web-Garden功能似乎是一个黑盒子 - 你无法控制IIS是否/何时决定在下一个HTTP请求命中时加载第2,第3或第4个进程.

对我来说,这似乎是一个常见问题,但寻找解决方案却收效甚微.我的问题是,有没有办法通过HTTP标头或其他一些构造给IIS一个提示,你希望它加载或至少路由到进程2,3,4等?

asp.net iis caching web-garden

3
推荐指数
1
解决办法
2048
查看次数