나는 직업 메일과 SMS 알림을 보낼 환경에 Resque
을 소개하는 Rails 3.2.20 앱이 있습니다. 모든 것을 적절하게 개발하여 설치 했으므로 지점을 병합하고 스테이징을 수행 한 다음 테스트를 위해 프로덕션을 수행 할 준비가되었습니다. 하지만 몇 가지 질문이 있습니다.레일에 Resque Capistrano 배치
1.) 실제 메모리에서 Resque를 실행하려면 어느 정도의 메모리가 필요합니까? Resque 작업자를 시작하면 전체 환경을로드한다는 것을 이해합니다. 나는 약간의 기억이 빡빡하고 어떤 문제도 갖고 싶지 않습니다. 전자 메일/SMS 트래픽이 매우 가벼우 며 몇 초에서 몇 초 동안 대기열을 백업하는 데 신경 쓰지 않아도 Resque 직원 한 명을 사용할 것입니다. 나는이 질문이 매우 모호하다는 것을 알고 있지만 Resque가 요구하는 기억 공간에 대한 느낌을 얻고 싶습니다.
2.) 저는 Redis를 실행하게 될 것입니다.하지만 기존 Resque 작업자를 죽일뿐만 아니라 배포시 Resque 작업자를 시작하는 방법을 알아야합니다. 배포 작업 후에 Cap으로 추가 할 다음 항목을 생각해 냈습니다.
task :resque_restart do
run "kill $(ps aux | grep 'resque' | awk '{print $2}')"
run "cd #{current_path}; bundle exec rake resque:work QUEUE=*"
end
실제로 (내가 사용) 카피 스트라 노 2이 테스트를하지 않은,하지만 명령을 수동으로 테스트 한 첫 번째 명령은 모든 resque 레이크 작업을 죽일 수행하고 두 번째 명령은 노동자 시작 모든 대기열을 사용할 수 있습니다.
이것이 최선의 방법인지 잘 모르겠습니다. 그래서 저는이 간단한 카피스트라노 과제에 대한 의견을 듣고 싶습니다.
3.) Resque 레이크 작업을 모니터링하는 가장 좋은 방법은 무엇입니까? 예를 들어 충돌이 발생하거나 종료 신호를 받으면 응용 프로그램이 중단되지 않고 작업자 레이크 작업이 항상 실행되도록 다시 시작할 수 있습니까?
제공 할 수있는 조언이나 안내에 대해 미리 감사드립니다.
좋은 결과입니다. 정말 좋은 정보. 내 Resque 작업자는 전자 메일 및 Twilio SMS에만 사용됩니다. ActionMailer 및 Twilio API 호출 인 많은 단순한 전자 메일 및 SMS 호출과 같은 많은 대형 개체를 인스턴스화해서는 안됩니다. 나는 카피스트라노 - resque 보석을 정말로 좋아한다. 그것은 내가 찾고있는 것이 분명합니다. 나는 잠시 동안 Monit과 사랑/증오 관계를 맺었 기 때문에 하나님을 찾고 있습니다. :) – nulltek
그래, 그 경우에는 확실히 당신의 resque 인스턴스가 매우 작은 풋 프린트로 기대합니다. 죄송합니다. 정확한 크기를 제공 할 수는 없지만 앱을 모르면 예상하기가 어렵습니다. – CDub
걱정하지 않아도,이 모든 것을 테스트하고 프로덕션 트래픽을 시뮬레이션 할 수있는 준비 환경이 있습니다. 나는 Resque가 200-300MB 이상을 차지할 것을 기대하지 않는다. 나는 약 1.9GB의 여분의 4GB 서버를 가지고있어서 좋을 것이다. 저는 카피스트라노 - 리 스틸 보석을 들여다 보며 하나님을 사용하여 공정 관리를 할 것입니다.궁금한 점이 있으면 꼭 게시하겠습니다. 내 애플 리케이션이 백그라운드 처리의 속도를 얻을 때까지 기다릴 수 없어. Actionmailer는 꽤 빠르지 만 Twilio API 호출은 대기 시간이 1-2 초가됩니다. – nulltek