내가 읽은 바로는 셀러리 작업자가 중지되고 다시 시작할 때 대기열에서 소모 할 수 있어야합니다.강제 종료 후 셀러리 작업자가 다시 시작되지 않음
이를 테스트하기 위해 각 컴퓨터에 2 명의 셀러리 작업자가있는 가상 컴퓨터 3 대를 설치했습니다. 셀러리 데몬을 사용하고 있습니다. 하나의 머신에는 클라이언트 스크립트가 있고, 하나는 브로커 역할을하지만, 모두가 rabbitmq를 실행하고 있습니다.
클라이언트 스크립트를 시작하면 모든 직원이 작업을 가져오고 있습니다 (로그에서 알 수 있습니다). 실패시 어떤 일이 발생하는지 테스트하기 위해 내 컴퓨터 중 한 곳에
service celeryd stop
을 발급합니다. 잠시 후, 나는 분 전에 멈춘 기계에
service celeryd start
을 발급합니다. 그러나이 명령을 내리면 내 클라이언트 스크립트가 멈추고 중지되며 위의 시스템에있는 작업자는 다시 작업을받지 못합니다.
무슨 일이 일어나고 있는지 알고 싶습니다. 셀러리 작업자가 종료되기 전에 작업 한 마지막 작업이 어떻게 든 방해 받고 있다는 가능성을 짐작하고 있습니다.
FYI : 고객 스크립트에서 결과를 수신하면 임시 대기열을 삭제할 예정이지만 위의 문제에 영향을 미치지 않는다고 생각합니다.