我有一个,当应用程序池在线时,它需要一些热身(通常5-10分钟)。因此,我喜欢在下班时间安排IIS\App循环。当我的回收在中午发生时,我会让用户对我大喊大叫(而且我也不喜欢被人吼)。
我一直在做的是在VM中进行远程处理,向本地磁盘添加一个cmd文件,并创建一个运行cmd文件的计划任务:
net stop "World Wide Web Publishing Service"
net start "World Wide Web Publishing Service"我的问题是,周期性的PaaS服务会被“刷新”,所以随机地,我手动发布到云服务VM的任何代码\文件都会消失。我需要远程回到机器,重新添加我的cmd和预定的任务。
我知道云服务允许您运行启动任务等等。我是否可以执行类似于启动任务的操作,允许我在发布应用程序时打包这个cmd文件,但是可以将这些命令安排在外部?如果是这样..。多么?
发布于 2016-08-01 16:00:21
启动任务可以执行您在.cspkg中包含的任何无人值守的应用程序/安装程序。您需要确保所讨论的cmd文件被正确打包(例如将configureSchedule.cmd添加到项目中,确保它被复制到输出目录中)。
由于您试图设置调度,您可能需要以提升模式运行您的cmd:
<Startup>
<Task commandLine="configureSchedule.cmd" executionContext="elevated" taskType="simple" >
<Environment>
<Variable name="MyVersionNumber" value="1.0.0.0" />
</Environment>
</Task>
</Startup>发布于 2016-08-02 12:41:27
更好的解决方案是将AppPool设置更改为在特定时间循环。这是从David提到的启动脚本中执行的。
看看这里:Set default app pool recycling via command line

一定要取消“正常时间间隔”,否则在白天会发生循环事件。
另外,您正在停止WWW服务,一个更快捷的方法是只回收应用程序池。这样就启动了一个新的应用程序池,而旧的应用程序池处理用户的最后一个请求。因此,连接性几乎没有丧失。
appcmd recycle apppool /apppool.name: Marketing https://stackoverflow.com/questions/38703064
复制相似问题