为什么Rails控制台创建了如此多的Ruby进程?

时间:2015-03-26 17:55:52

标签: ruby-on-rails ruby process cron rake

我与Cron一起尝试了Rake任务。我从没有Ruby进程开始,然后Cron作业开始并产生一个进程。下面突出显示的流程是Cron运行的,预计会:

enter image description here

我想检查是否有任何记录写入数据库。我运行rails c进入Rails控制台,并注意到我的进程列表中突然出现了其他四个ruby进程,如上所示。为什么会这样?我认为运行控制台应该创建另一个进程,而不是四个。

退出控制台后,我留下了三个Ruby进程,包括正在运行的Rake任务。

我使用的是Rails 4.2。

我发现这不是问题,但我很好奇为什么REPL关闭后需要有多个REPL进程,然后是两个剩余进程。

1 个答案:

答案 0 :(得分:3)

这是因为spring默认情况下已经在一段时间内附带了rails。

您可能会注意到第二次运行rails c比第一次快得多。这是因为第一次运行弹出脚本时,您的应用程序正常加载,然后分叉运行您请求的内容。第二次围绕这个加载器脚本可以只是第二次分叉,所以你可以更快地启动。这可能是因为您注意到了这些额外的过程。

您可以通过运行

来查看它们
spring status

你可以通过运行

来杀死他们
spring stop
相关问题