Node.js / Heroku上的Procfile

时间:2017-08-20 04:40:54

标签: node.js heroku

我正在重读这个教程 https://devcenter.heroku.com/articles/getting-started-with-nodejs#introduction 理解我对function buildReport1() { var br='<br />'; var agentA=uniqueItemArray(4); var clientA=uniqueItemArray(5); var ss=SpreadsheetApp.getActive(); var trng=ss.getSheetByName('Format').getRange("A1:C5"); var sh=ss.insertSheet(); var shName=sh.getName(); sh.activate(); var rngA=[]; for(var i=0;i<=clientA.length;i++) { rngA[i]=sh.getRange(i*(agentA.length + 2) + 1,1,agentA.length + 2,3); var vA=rngA[i].getValues(); trng.copyTo(rngA[i],{formatOnly:true}); if(i!=clientA.length) { vA[0][0]=clientA[i]; } else { vA[0][0]='All'; } vA[1][1]='Calls Made'; vA[1][2]='Appointments Booked'; for(var j=0;j<agentA.length;j++) { vA[j+2][0]=agentA[j]; } rngA[i].setValues(vA); } return rngA; } 的理解。

有一个名为定义Procfile 的部分。

但是当我去看我自己的应用程序来检查这个文件里面的内容时。 我看到许多应用程序(并非所有)都没有这样的文件并且工作正常。

那么,发生了什么?什么时候需要Node.js/Heroku?如果没有,会发生什么? 什么时候最好有一个?

1 个答案:

答案 0 :(得分:0)

为了帮助您入门,Heroku将尝试自动检测您的应用类型并正确启动,即使它没有配置文件(请参阅此处示例 - http://blog.taylorrf.com/blog/2014/12/15/heroku-default-server/)。

例如,在Node中,如果您有index.js文件和package.json文件,则可能是可以使用node index.js启动的节点应用。

虽然方便,但这被认为是不好的做法,因为:

  1. Heroku可能会改变他们将来自动检测应用的方式,从而破坏您的部署。
  2. 您可能会错过某些配置/优化(请参阅上面链接的文章)。