Tôi đã làm theo hướng dẫn tại https://devcenter.heroku.com/articles/queuing-ruby-resque để xếp hàng và chạy công việc nền trong ứng dụng Rails. Sau khi xếp hàng các công việc, nó dường như không chạy bất kỳ các công việc từ trong giao diện điều khiển tôi có thể thấy công việc chưa được xử lýViệc làm với Resque cung cấp cho công việc "Không biết cách xây dựng công việc": công việc '"trên Heroku
>Resque.info
=> {:pending=>1, :processed=>0, :queues=>1, :workers=>0, :working=>0, :failed=>0, :servers=>["redis://dory.redistogo.com:9826/0"], :environment=>"production"}
Nếu tôi cố gắng làm (cục bộ)
bundle exec rake jobs:work
tôi nhận được
rake aborted!
Don't know how to build task 'jobs:work'
On Heroku, nếu tôi cố gắng
tôi một lần nữa có được 'Không biết làm thế nào để xây dựng nhiệm vụ'
Trong Rakefile tôi, tôi có require 'resque/tasks'
và trong Procfile của tôi, tôi có
resque: env TERM_CHILD=1 bundle exec rake jobs:work
resque: env TERM_CHILD=1 bundle exec rake jobs:work
Tôi có Resque và đá quý redis trong Gemfile của tôi, nhưng không bị trì hoãn_job.
Cập nhật: Đây là Rakefile tôi:
#!/usr/bin/env rake
require File.expand_path('../config/application', __FILE__)
Guard::Application.load_tasks
/lib/tasks
trống. Tôi có một công nhân trong ứng dụng/công nhân mà tôi đang enqueueing trong một bộ điều khiển.
Tôi nghĩ bạn nói đúng, có thể tôi đang thiếu thứ gì đó. Tôi đã thêm Rakefile của mình. Tôi sẽ xem xét các tài liệu resque. Hãy cho tôi biết tôi có thể cung cấp thông tin nào khác. – highBandWidth
Ồ, tôi có thể cần phải thêm tập tin lib/tasks/resque.rake với 'require 'resque/tasks" tác vụ "resque: setup" =>: environment'. Tôi sẽ thử khi tôi trở lại máy tính của mình. – highBandWidth
Vâng, tôi đã phải xác định nhiệm vụ trong lib/nhiệm vụ – highBandWidth