Tôi có một tác vụ cào chạy mailman trong môi trường đường ray.Daemoninsing một công việc cào
Tôi muốn đảm bảo rằng tác vụ rake luôn chạy qua daemon.
nhiệm vụ cào của tôi là rake incoming_mail
Làm thế nào tôi sẽ đi về daemonising đó?
Tôi có một tác vụ cào chạy mailman trong môi trường đường ray.Daemoninsing một công việc cào
Tôi muốn đảm bảo rằng tác vụ rake luôn chạy qua daemon.
nhiệm vụ cào của tôi là rake incoming_mail
Làm thế nào tôi sẽ đi về daemonising đó?
Nếu bạn sử dụng Linux, bạn có thể xem xét sử dụng start-stop-daemon.
start-stop-daemon -S --pidfile /var/run/incoming_mail.pid -u rails_user -d /path/to/your/rails/app -b -a "rake incoming_mail"
Để sau một cách duyên dáng giết quá trình bạn có thể sử dụng hầu hết các lập luận nhưng thay -S với -K.
Như thường lệ, bạn có thể tìm thêm thông tin về start-stop-daemon bằng cách đọc các trang hướng dẫn sử dụng.
đó là những gì tôi cần. cảm ơn –
Trong linux để chạy quá trình ở chế độ nền, bạn có thể thêm & vào cuối lệnh. Vì vậy,
cào incoming_mail &
có lẽ nên làm các công việc cho bạn.
làm thế nào tôi có thể đảm bảo nhiệm vụ rake đang chạy khi ứng dụng đường ray đã được bắt đầu. –
Giải pháp này chỉ chạy trong nền, điều đó là tốt, cho đến khi bạn muốn đảm bảo rằng mọi thứ đang hoạt động. – pjammer
Nếu bạn sử dụng Ruby 1.9+, bạn có thể sử dụng Process.daemon. Ngoài ra còn có một giải pháp cho Ruby < 1.9: http://www.jstorimer.com/blogs/workingwithcode/7766093-daemon-processes-in-ruby
Bạn đang sử dụng Linux hoặc OSX? Bạn muốn daemon này loại tính năng nào? – Maran
'daemon stop' và' daemon start' –