当前几个用户访问该网站时,性能非常慢.
Windows Azure安装程序使用IIS 7.0,因此预热初始化模块不是一个选项.
有没有办法"热身"网站,以便这种性能速度不是问题?
我已经看过这个:在Windows Azure中控制应用程序池空闲超时,但不确定当Azure每29小时回收一次应用程序池时,这是否仍然会导致问题.
更新:
部署是1个包含多个网站的Web角色.是否可以为此进行预编译?或者使用下面其中一个答案中建议的网络角色?
编辑:
正如@Igorek在下面提到的关于使用Web角色的说法,这些角色在Role的启动期间自动加载,这在我的设置中是可能的.有没有人有如何实现这一目标的例子?
我已经看过这个:在Windows Azure中控制应用程序池空闲超时,但不确定当Azure每29小时回收一次应用程序池时,这是否仍然会导致问题.
Azure回收应用程序池时不会导致问题,但您也可以添加到该启动任务以防止/增加应用程序池的回收时间.
试试这个:
在您的ServiceDefinition:中定义任务:
<Startup>
<Task commandLine="startup\disableTimeout.cmd" executionContext="elevated" />
</Startup>
Run Code Online (Sandbox Code Playgroud)
然后让您的cmd文件包含以下代码(只需将其放入记事本,然后另存为.cmd文件):
%windir%\system32\inetsrv\appcmd set config -section:applicationPools -applicationPoolDefaults.processModel.idleTimeout:00:00:00
%windir%\system32\inetsrv\appcmd set config -section:applicationPools -applicationPoolDefaults.recycling.periodicRestart.time:00:00:00
Run Code Online (Sandbox Code Playgroud)
要确保的两件事:
1)确保使用ANSI编码保存文件.
2)当您将该脚本添加到Visual Studio中时,请确保在属性中选择"始终复制"作为"复制到输出目录"选项.
| 归档时间: |
|
| 查看次数: |
5577 次 |
| 最近记录: |