【发布时间】:2015-08-21 06:21:13
【问题描述】:
我目前使用pm2 来管理我的节点进程。我遇到了需要运行 Sinatra 服务器的情况,但我不知道如何让它保持活力。
是否有一个 pm2 相当于托管 Ruby 脚本或 Sinatra 应用程序?
【问题讨论】:
-
我想像 Phusion Passenger 这样的人应该可以完成这项工作。
我目前使用pm2 来管理我的节点进程。我遇到了需要运行 Sinatra 服务器的情况,但我不知道如何让它保持活力。
是否有一个 pm2 相当于托管 Ruby 脚本或 Sinatra 应用程序?
【问题讨论】:
看起来红宝石的 PM2 等效项是... PM2。它允许您选择您的解释器和start any process type。我链接到的文档甚至有一个如何设置启动 Ruby 进程的示例。
来自文档:
要运行非 JS 解释器,您必须将
exec_mode设置为fork_mode和exec_interpreter为您选择的解释器。例如:
{
"apps" : [{
"name" : "bash-worker",
"script" : "./a-bash-script",
"exec_interpreter": "bash",
"exec_mode" : "fork_mode"
}, {
"name" : "ruby-worker",
"script" : "./some-ruby-script",
"exec_interpreter": "ruby",
"exec_mode" : "fork_mode"
}]
}
【讨论】:
我来自 node 世界,喜欢 pm2,foreman 非常适合运行 ruby 应用程序https://github.com/ddollar/foreman。 Foreman 可以通过一个命令启动给定应用程序所依赖的所有服务。它还可以处理您的应用程序和服务的并发性。
【讨论】: