我对Windows Server非常陌生,对于虚拟问题感到抱歉。 我有一个Windows Server 2008 R2企业版。 有几个AppPools。 问题是, DefaultAppPool在40个用户在线之后停止响应(取决于loadimpacttesting)。
奇怪的是,当我在TestPool或Test2Pool (不同的域,不同的网站和数据库比DefaultAppPool )configuration的网站上进行负载testing时, DefaultAppPool网站挂起,而TestPool网站是好的。
此负载testing对服务器的CPU或内存使用情况没有影响。 我已经尝试使用性能监视器监视HTTP服务请求队列和W3SVC_W3WPvariables,但没有任何奇怪的迹象。 还检查了连接限制 – 这是默认值。
我怎么能跟踪这个问题?
在IIS中标记为应用程序的任何目录都可以在任何应用程序池中运行。 虚拟目录和物理目录运行在其父应用程序/站点/层次结构中的任何上层应用程序中。
由于DefaultAppPool是全面的应用程序池,我猜测在某些时候,其中一个其他网站的一部分被标记为应用程序,并且该应用程序被设置为在DefaultAppPool中运行。
所以,当TestPool.com/在TestPool中运行时,也许TestPool / AppA被设置为在DefaultAppPool中运行?
虽然GUI为每个站点创build一个应用程序池,并且试图保持组织性,但脚本需要自己pipe理这种细节,这可能导致像这样的反直觉似的情况。
否则,当其他站点运行时(比如身份validation代理或其他Web服务模块),可能有一个组件会调用DefaultAppPool,因为应用程序池通常彼此隔离,并且通过共享依赖关系互相影响。
您通常可以右键单击应用程序池,然后select“查看应用程序”,以确定其他站点的某些小应用程序是否侵入了特定的应用程序池。