Azure网站节点stream程生命周期
我发现Azure网站(试用版)没有自动启动我的节点服务器进程(只有当我在网页浏览器中加载url时才启动); 而且在一段时间内没有任何要求的情况下,这个过程就被杀死了。
我的意思是,当我推我的服务器,我希望它立即开始运行,并不断。
我读过(例如这里 ),这可能与iisnodepipe理azure网站的方式有关,而且我无法做任何改变。 这是Azure网站的实际方式吗? 有什么办法可以解决这个问题吗?
提前致谢,
布鲁诺。
你find了答案。 没有其他答案。
由于不活动进程终止来自IIS – 有空闲超时设置 。 据我所知在Azure网站中不能configuration(至less不是Free层)。 查看这个SO问题及其答案 ,以便更好地理解为什么您无法在FREE和STANDARD层次上更改此超时。
这是一个有趣的解决方法,以避免这种空闲超时。 实际上,如果你使用技术,你也会有一种“自动启动”的方式,当你的调度程序在新的部署后到达你的站点时,它将“启动”。
这可能会有点复杂,但是如果您不想使用5分钟的ping服务,可以通过执行以下操作来保持这些服务始终开启:
- 在门户网站的网站configuration选项卡上创build一个应用程序设置:
WEBSITE_PRIVATE_EXTENSIONS
并赋值为1
- 创build一个名为
applicationhost.xdt
的文本文件,并用下面的代码填充它:
<?xml version="1.0"?><configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"><system.applicationHost><applicationPools><add name="DefaultAppPool" managedRuntimeVersion="v4.5" startMode="AlwaysRunning"><processModel identityType="ApplicationPoolIdentity" /></add></applicationPools></system.applicationHost></configuration>
- ftp到您的网站,并在名为
Site Extensions
的根目录下创build一个文件夹。 (现在应该有3个文件夹在您的根目录:LogFiles,网站,和SiteExtensions) - 在“网站扩展”中创build另一个名为
ASPLimits
文件夹 - 将applicationhost.xdt上载到ASPLimits文件夹中
- 使用门户重新启动您的网站