我们有一个繁忙的网络服务器,每秒处理大约1000个asp.net请求。
我们有一个部署脚本,可以从开发框中复制编译的asp.net。
该脚本首先在生产服务器上停止IIS,复制代码,然后重新启动。
我们使用以下命令来停止该站点的应用程序池:
%windir%\ system32 \ inetsrv \ appcmd停止apppool /apppool.name:ourappname
问题在于,这将停止接受新请求,但会等待现有请求完成。通常,少数几个请求最多需要一分钟才能完成,在此期间不提供任何新请求。因此,为了满足十几个请求,我们错过了等待大约12-20分钟的那一分钟左右收到的1000 * 60 = 60,000个请求。真傻
我们希望做的是在x秒内强制停止应用程序池。这似乎不可能。有没有更好的方法来完成我们正在做的事情,即iis 7的快速停止?