Articles of 应用程序池

什么时候IIS 6.0应用程序池崩溃与内存问题?

我们在混合的传统ASP / .NET网站上遇到了内存不足的问题已经有一段时间了。 基本上,我们看到几个不同的情况: 一些请求(SQL查询返回一个大的logging集)发生,导致内存急剧尖峰(私人和虚拟字节),IIS工作进程崩溃,应用程序池回收。 私人字节保持“正常”,但虚拟字节处于最大值(〜2GB),IIS工作进程崩溃,应用程序池回收。 崩溃有EventID:1009,1011和1013。 在这两种情况下,ASP都会在我们的应用程序日志中报告内存不足消息 如果我们真的“内存不足”,为什么应用程序中的用户仍然可以工作,新用户甚至不能login? 这不是说没有任何要求可以提供吗? 显然,IIS仍然可以处理一些请求 – 所以答案可能是取决于具体的请求。 也许一个比另一个更“昂贵”? 无论如何,我的最终问题是 – 应用程序池在什么时候说足够了,我必须回收? 我们运行DebugDiag,看到一些超过90%甚至100%碎片的堆,所以只有当碎片高和没有更多的堆空间时,才会发生回收 。 这是一个稍微有些主观的问题,但是我希望能够得到一些关于这个门槛的信息! 谢谢。

应用程序池停止

我在Windows Server 2003 R2,IIS 6.0上的应用程序池有问题。 有时应用程序池因不明原因停止。 我想研究这个。 可能是什么原因? 停止事件在哪里可以logging?

有时IIS分配更多的工作进程比configuration?

我们在Windows Server 2008上有一个IIS 7.5 Web服务,用于处理来自C#客户端的WCF请求。 此服务被configuration为最大工作进程= 1,所以它不是一个networking花园。 IIS设置为每天(凌晨3点)同时进行自我回收 。 我想debugging粗糙的连接问题,所以我想确保应用程序池不是自我回收。 我将池configuration为在回收自己时logging一个事件 。 令我惊讶的是,我在系统事件日志中看到以下条目: 级别:信息date/时间:3/23/2012 3:00:00 – 来源:WAS – 事件ID:5076 进程ID为“6636”的服务应用程序池“MyAppPool”的工作进程已经请求回收,因为它已经达到了预定的回收时间。 级别:信息date/时间:3/23/2012 2:59:39 AM – 来源:WAS – 事件ID:5076 进程ID为'9364'的服务应用程序池'MyAppPool'的工作进程已经请求了一个回收,因为它达到了预定的回收时间。 IIS在上午3点正确地回收应用程序池。 但是,我不明白为什么我会在几秒钟内在日志中获得两个回收事件。 进程的最大数目是1. IIS是否有时为被指定为具有一个进程的应用程序池分配多个进程? – 编辑 – 我今天下午4点左右连接,只能看到1个w3wp.exe进程。 没有其他事件日志条目会指示崩溃。

在IIS 7.5中configuration自定义应用程序池

我有一个问题,那就是杀了我两天。 问题是我必须在IIS(Server 2008,V7.5)上configuration两个报告(ColdFusion + DotNet),以便它们在单独的应用程序池上工作。 但是,如果我configuration这样的方式,我得到一个错误 “HTTP错误403.18 – 禁止 指定的请求无法在Web服务器上为此资源configuration的应用程序池中处理“。 但是,如果我将应用程序放在与默认网站相同的池上,然后第二个应用程序和第一个应用程序位于同一个应用程序池中,则可以解决此问题。 我也注意到这个问题在Windows Server 2003 IIS上不会发生。 我也尝试隔离我的应用程序远离inetpub,那嚣张的工作 为什么发生这种情况?

回收应用程序池是否清除请求队列?

我是一个IIS的nube。 我一直在阅读关于回收应用程序池以释放由可能泄漏的有问题的应用程序引起的内存的好处。 我明白,通过回收应用程序池,我本质上重新启动应用程序,而无需重新启动服务器。 我也明白,通过回收应用程序池,我正在清理应用程序caching和会话。 我的问题是,当我回收configuration为只有一个工作进程的应用程序池时,是否清除了请求队列,或者是否在新工作人员启动时满足排队的请求?

在服务器上安装.NET Framework 4.6.2是否会重置运行IIS的应用程序池?

在我们的生产数据中心,我们有ASP.NET 2.0运行的IIS池。 我们需要在这些服务器上安装新的WebApp,但是他们使用.NET Framework 4.6.2。 我们不能阻止我们的IIS池,但我们需要安装新的框架来运行这些新的应用程序。 有谁知道/有一个可靠的证据,我可以安装框架,而无需重新设置任何正在运行的应用程序池? 或者我应该寻找一个部署窗口? (也就是圣诞节之后)。 EDIT .Net Framework 4.5已经安装在这些服务器上。

为什么将读取和执行权限分配给IIS_IUSRS授予对NETWORK SERVICE的访问权限?

我有一个经典的ASP网站,我试图设置与匿名身份validation。 以下是我目前的设置: 应用程序池标识:NetworkService 匿名authentication用户:IUSR 将读取和执行权限分配给站点目录上的IUSR帐户和NETWORK SERVICE帐户允许匿名访问。 但是,由于某种原因NETWORK SERVICE权限可以分配给IIS_IUSRS并达到相同的效果。 这对我来说似乎很奇怪,因为应用程序池正在运行时select了NetworkService标识,而不是ApplicationPoolIdentity标识。 使用net localgroup IIS_IUSRS显示NETWORK SERVICE不是机器上的IIS_IUSRS组的成员。 那么,为什么要为IIS_IUSRS分配权限就可以访问NETWORK SERVICE帐户呢? 我想也许有一些奇怪的后备逻辑,它尝试使用应用程序池的虚拟帐户,如果它无法通过NETWORK SERVICE身份validation,但运行进程监视器显示w3wp.exe进程成功使用NT Authority\NETWORK SERVICE身份validation。 有任何想法吗? 这是一些服务器信息,如果有帮助: 操作系统:Windows Server 2008 R2标准服务包1 IIS:7.5.7600.16385 应用程序池:.NET Framework v2.0,经典托pipepipe道,networking服务标识

IIS 6.0应用程序池崩溃

我们的一个networking服务器上的一个应用程序池崩溃,我们在Eventlog中find了这个应用程序池,我们可以在哪里find关于它的更多信息? Event Type: Error Event Source: W3SVC Event Category: None Event ID: 1101 Date: 11/23/2009 Time: 10:57:55 AM User: N/A Computer: ID-WEB Description: The World Wide Web Publishing Service failed to create app pool 'Global'. The data field contains the error number. For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp. Data: 0000: b7 […]

在IIS7中监视大量应用程序池的最佳方法是什么?

首先介绍一些背景知识 – 我们在Windows 2008上运行IIS 7.我们每台服务器运行大约250个网站,每个站点都有自己的应用程序池。 我需要一种方法来监视每个应用程序池的崩溃和挂起,并发送一个电子邮件警报,如果应用程序池没有反应超过2分钟。 我想通过一个ASP.NET页面映射到每个站点的虚拟目录,我们可以通过现有的监视系统( HostMonitor )进行轮询。 有其他人有这方面的经验吗?

有多less工作进程分配给应用程序池?

我可以configuration工作进程的数量,我需要一个应用程序池应该使用?