我正在寻找一个简单的解释,当我输入以下命令时会发生什么:
heroku ps:scale web=1
Heroku在幕后部署应用程序是什么?我问,因为我刚刚使用Heroku进行部署,并希望更好地了解该过程。谢谢!
答案 0 :(得分:18)
此命令不会部署应用程序。它在你部署后启动它。
部署应用程序时,heroku会创建一个“slug”。应用程序的可运行压缩版本,然后存储。 然后你可以启动“dynos”,它会把你当前的slug并在heroku的服务器上启动它。
运行heroku ps:scale web=1
会将您的应用扩展为一个正在运行的dyno,这意味着您当前有一台服务器在运行您的应用。
如果您再次部署应用程序,将生成并存储一个新的slug,并且将销毁您当前运行的dynos,并使用新版本的代码替换为新的dynos。
答案 1 :(得分:1)
您将网络动态数量缩放为1
我想说有很多关于这个话题的文件。
https://devcenter.heroku.com/articles/scaling
https://devcenter.heroku.com/articles/dynos
答案 2 :(得分:1)
每当您在heroku中新部署应用时,它都会启动应用运行的 dyno 。只需将其视为服务器即可。此服务器无法同时处理大量请求。
因此,为了处理所有这些批量请求,您可能希望运行应用程序的多个实例,即使用heroku中可用的备用资源运行多个dyno,就像在tomcat中使用该命令在同一应用程序中运行多个实例一样(在课程范围内) ):
heroku ps:scale web=<number_dynos_u_want>
Heroku为您进行负载均衡。因此,您可以水平扩展您的应用程序以处理更多负载。希望这能清除这个概念!
答案 3 :(得分:1)
尽管其他答案是正确的,但我认为有些人可能会发现理解命令的实际故障很有用。
ps
是一个命令,该命令为许多影响测功机(〜虚拟机实例)的命令添加了前缀;我假设它与linux ps
命令有关,该命令代表“进程状态”。ps:scale
用于增加运行进程的dynos的数量。 ps:scale web=1
指定在1个Web dyno上运行该过程。 Heroku CLI命令的索引可以在这里找到: https://devcenter.heroku.com/articles/heroku-cli-commands