Я загружаю заказы из Amazon с rake task
, который создает бесконечное l oop и прерывается только в случае ошибки. Однако мне нужно, чтобы эта задача работала в фоновом режиме самостоятельно. Первоначально я думал создать fork
и выполнить там мой код ruby, но я понимаю, что это может привести к процессу zomb ie. Итак, чтобы устранить это, я должен использовать Process.wait (pid), который затем не позволяет моему рейку по-настоящему работать в фоновом режиме. Как это можно сделать? Вот мой код:
namespace :api_data_downloader do
desc "TODO"
task start: :environment do
pid = fork do
while true
#poll API here and wait random amounts of time under certain conditions.
end
end
Process.wait(pid)
end
end