强制快速停止IIS 7.5或应用程序池


1

我们有一个繁忙的网络服务器,每秒处理大约1000个asp.net请求。

我们有一个部署脚本,可以从开发框中复制编译的asp.net。

该脚本首先在生产服务器上停止IIS,复制代码,然后重新启动。

我们使用以下命令来停止该站点的应用程序池:

%windir%\ system32 \ inetsrv \ appcmd停止apppool /apppool.name:ourappname

问题在于,这将停止接受新请求,但会等待现有请求完成。通常,少数几个请求最多需要一分钟才能完成,在此期间不提供任何新请求。因此,为了满足十几个请求,我们错过了等待大约12-20分钟的那一分钟左右收到的1000 * 60 = 60,000个请求。真傻

我们希望做的是在x秒内强制停止应用程序池。这似乎不可能。有没有更好的方法来完成我们正在做的事情,即iis 7的快速停止?

Answers:


0

为什么需要停止并重新启动应用程序池?更新bin目录中的文件将导致应用程序池在相关位置重新启动。完成部署后,如果尚未更新bin中的任何内容,则将更改保存到web.config文件将导致应用程序池重新启动。

如果确实需要将其降低,则可以在IIS级别(w3wp服务)进行。

net stop w3wp
#Deploy
net start w3wp
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.