heroku cedar 스택에서 resque를 성공적으로 실행하고 인터페이스를 레일에 마운트했습니다.Heroku 삼나무 스택에 재 저장 작업자가 종료 한 후에도 작업자 수는 여전히 존재합니다.
내가 작업자를 시작할 때, 모든 것이 잘 작동합니다. 작업자가 작업을 처리합니다. 하지만 제가 직원을 죽이면 Resque는 여전히 그 직원이 사용 가능하다고 생각합니다. 내가 다른 노동자를 시작할 때, 2 명의 노동자가 있다고 생각하지만 실제로는 단 하나의 노동자 만 있다고 생각합니다.
나는 또한 여기에 양식을 알립니다. http://devcenter.heroku.com/articles/ps heroku는 작업자를 죽일 때 SIGTERM을 보내고 종료하지 않으면 SIGKILL을 보냅니다.
여기 내 프로세스가 10 초 종료하는 다음 더 걸리는 것을 볼 내 작업자 로그
2011-08-11T02:32:45+00:00 heroku[worker.1]: Starting process with command `bundle exec rake resque:work QUEUE=*`
2011-08-11T02:32:46+00:00 heroku[worker.1]: State changed from starting to up
2011-08-11T02:33:58+00:00 heroku[worker.1]: State changed from up to stopping
2011-08-11T02:34:00+00:00 heroku[worker.1]: Stopping process with SIGTERM
2011-08-11T02:34:09+00:00 heroku[worker.1]: Error R12 (Exit timeout) -> Process failed to exit within 10 seconds of SIGTERM
2011-08-11T02:34:09+00:00 heroku[worker.1]: Stopping process with SIGKILL
2011-08-11T02:34:11+00:00 heroku[worker.1]: Process exited
입니다. 작업자 작업에 레일 환경을로드하기 때문에이 작업을 수행 할 수 있습니까?
이 난 그냥 문제를 발견 내 레이크 작업 lib/tasks/resque.rake
require "resque/tasks"
task "resque:setup" => :environment
당신은 또한에서 정리할 수 있습니다 redis에 연결하고 .del ('workers')을 실행하여 콘솔 – Bob