如何在PhusionPassenger.on_event()上的fork之后插入代码

时间:2019-05-31 14:14:03

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 ruby-on-rails-5

是否有PhusionPassenger.on_event的参数可用于after_fork?而不是:starting_worker_process

我想研究在乘客中运行的Rails控制器和模型的类和方法。问题在于,如果在旅客创建新过程的过程中注意到乘客的班级或控制器和模型发生了更新,则铁路将重新加载,因为猴子将修补的班级重置为原始状态,这给我带来了困难。

有一种方法可以做到吗?

这是我的示例代码;

if defined?(PhusionPassenger)
  PhusionPassenger.on_event(:starting_worker_process) do |forked|
     require 'path/monkeypatched_script'
  end
end

monkeypatched_script里面是我的脚本,在这里我试图猴子修补类和方法。

当我运行我的应用程序时,它将生成3个进程。前2个过程 要求'path / monkeypatched_script'表现良好,但是在第三个过程中,要求'path / monkeypatched_script'没有执行。

返回我的问题,除了:starting_worker_process之外,是否还有另一个参数可用于after_fork。

0 个答案:

没有答案