Я использую DRb в приложении Rails для выгрузки дорогостоящей задачи за пределы процесса Rails. Перед инициализацией заглушки клиента с помощью DRbObject.new необходимо инициализировать службу DRb с помощью DRb.start_service.Где правильное место для инициализации службы DRb в приложении Rails?
Выполнение этого в модели или контроллере, похоже, оставляет проблемы в неопределенном состоянии. Когда я выхожу дворняга он говорит:
Reaping 1 threads for slow workers because of 'shutdown' Waiting for 1 requests to finish, could take 60 seconds.
Инициализация службы в environment.rb, кажется, работает хорошо с большой оговоркой: Я также использую backgroundrb с некоторыми рельсами рабочих. Когда они инициализируются, они запускают environment.rb и снова приводят к проблемам из-за двойной инициализации.
Где место для вызова DRb.start_service в клиенте? Или, есть ли способ проверить инициализацию, поэтому я могу избежать этого дважды для одного и того же процесса?