我与Cron一起尝试了Rake任务。我从没有Ruby进程开始,然后Cron作业开始并产生一个进程。下面突出显示的流程是Cron运行的,预计会:
我想检查是否有任何记录写入数据库。我运行rails c
进入Rails控制台,并注意到我的进程列表中突然出现了其他四个ruby进程,如上所示。为什么会这样?我认为运行控制台应该创建另一个进程,而不是四个。
退出控制台后,我留下了三个Ruby进程,包括正在运行的Rake任务。
我使用的是Rails 4.2。
我发现这不是问题,但我很好奇为什么REPL关闭后需要有多个REPL进程,然后是两个剩余进程。
答案 0 :(得分:3)
这是因为spring默认情况下已经在一段时间内附带了rails。
您可能会注意到第二次运行rails c
比第一次快得多。这是因为第一次运行弹出脚本时,您的应用程序正常加载,然后分叉运行您请求的内容。第二次围绕这个加载器脚本可以只是第二次分叉,所以你可以更快地启动。这可能是因为您注意到了这些额外的过程。
您可以通过运行
来查看它们spring status
你可以通过运行
来杀死他们spring stop