Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 推荐的Node.js Azure网站设置_Javascript_Node.js_Iis_Azure_Azure Web App Service - Fatal编程技术网

Javascript 推荐的Node.js Azure网站设置

Javascript 推荐的Node.js Azure网站设置,javascript,node.js,iis,azure,azure-web-app-service,Javascript,Node.js,Iis,Azure,Azure Web App Service,我目前正在构建一个小型Node.js网站,我想将其托管在Azure上。我想问我是否应该将应用程序的前端和后端部分分为两个不同的Azure网站,还是将整个应用程序放在一个Azure网站槽中 我认为将其分为两部分可能有意义,因为我不仅想从相应的网站访问后端部分,还想从其他部分(如移动应用程序)访问后端部分。我认为在这个设置中,更新前端部分也意味着后端API的停机 另一方面,两个网站使得从前端硬编码URL查询后端变得更加困难,socket.io不能再轻易地设置了,等等 在我的情况下,你会推荐什么 非常

我目前正在构建一个小型Node.js网站,我想将其托管在Azure上。我想问我是否应该将应用程序的前端和后端部分分为两个不同的Azure网站,还是将整个应用程序放在一个Azure网站槽中

我认为将其分为两部分可能有意义,因为我不仅想从相应的网站访问后端部分,还想从其他部分(如移动应用程序)访问后端部分。我认为在这个设置中,更新前端部分也意味着后端API的停机

另一方面,两个网站使得从前端硬编码URL查询后端变得更加困难,socket.io不能再轻易地设置了,等等

在我的情况下,你会推荐什么

非常感谢。

ExpressJS Socket.io 一些数据库 客户端jquery/IO服务器端DOM解析

没有任何Azure方面的经验。。切换到Linux!!
访问您的应用程序和数据应该非常重要,而应用程序的构建就是围绕这一点展开的。

Azure网站支持为您的站点创建阶段性部署


这意味着您在更新前端时不需要担心后端的停机时间,因为您可以在登台环境中更新前端,然后,当它准备好部署时,您只需交换暂存和生产环境,所有请求都会立即重定向到站点的更新版本,而不会停机。

Zain是正确的,因为您可以在Azure网站中创建插槽并交换它们以防止停机。例如,您可以创建暂存槽和生产槽,并将更新推送到暂存。一旦您确信暂存工作正常,就可以将暂存与live进行交换,理论上,live插槽应该没有任何停机时间

也就是说,这取决于你的预算。有插槽的Azure应用程序比没有插槽的Azure应用程序要贵。如果你想要便宜并且不关心自定义域之类的东西,使用两个免费网站,这将解决你的问题。否则,为了把所有东西都放在一起,我可能会把它们结合起来,然后支付更高的价格,但这也取决于你的应用程序的工作方式


如果价格不是问题,我会问自己:从前端查询后端有多困难?如果这会让简单的应用程序变得过于复杂,那么您可能希望合并应用程序并使用deloyment插槽,请参见此处了解更多信息:

我使用的是分阶段部署,但我感觉在交换后nodejs进程有一点停机。我会再试一次。但是假设停机时间不存在,您是否建议我使用一个网站槽而不是两个?@srn您找到克服停机时间的方法了吗?请澄清您的答案?这似乎与我的问题无关。