Azure上的Node.js + MongoDb,如何防止网站空闲?

标签 node.js mongodb azure web

我将 Node.js + MongoDB 应用程序部署到 Azure 网站,我将 MongoDB 与 MongoLab 插件结合使用。

我注意到每次部署后发送到应用程序的第一个请求不起作用,因为站点仅在第一个请求时初始化,也就是建立与 MongoDB 的连接的时间。

另一个问题是,如果我有一段时间不使用该网站,那么它似乎会处于空闲状态,因为我第一次尝试再次访问它时,它不起作用,与第一次类似请求。

是否有任何方法可以强制 Azure 在部署后启动网站并防止它使网站进入休眠状态?

更新:我已将网站从免费切换到标准,这似乎解决了第二个问题,但似乎并没有解决不再进入休眠状态。

第一个问题仍然存在,我在 app.js 的开头放置了一个 console.log() 调用,并使用 azure site log tail 监视该网站。 app.js 仅在第一个请求时执行。不过,这并不是一个大问题,因为我自然会尝试在每次部署后在浏览器中打开该站点,但仍然有点奇怪。

最佳答案

要在部署后预热站点,如果您正在利用 Azure 网站源代码控制支持,可以考虑的一个选项是使用 HTTP 客户端命令进行部署后操作 Hook 。更多信息请访问此链接:https://github.com/projectkudu/kudu/wiki/Post-Deployment-Action-Hooks .

要防止网站在空闲时间被卸载,您可以在标准模式下为网站启用“始终打开”设置。更多信息请访问此链接:http://www.windowsazure.com/en-us/documentation/articles/web-sites-configure

关于Azure上的Node.js + MongoDb,如何防止网站空闲?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21529222/

相关文章:

node.js - 为什么我不能将 api 参数传递给 lambda 函数?

javascript - Node -HTTP-代理错误

django - Celery 与 Django 和 MongoDB (mongoengine)

mysql - 将mongodb迁移到mysql?

c# - 为什么 ListBlobsSegmentedAsync 仅在第二页返回结果?

json - Azure 流分析查询 JSON

javascript - 当在 app.listen(PORT, HOST) 中设置 HOST 时,为什么 app.address() 为空?

mongodb - 如何在 mongo 集合中获取子文档数组的分页/切片数据?

encryption - 有关于实时 Azure Blob 加密/解密的教育资源吗?

angularjs 指令不起作用(node.js 和 angularjs newbee)