2012-03-21 1 views
2

일회성 (비 반복적 인) 작업을 큐에 넣고 나중에 특정 시간에 실행하게 해주는 경량 시스템을 찾고 있습니다.일회성 작업을위한 지연 실행을위한 큐 제안

사용자가 시간 기반 작업을 수행하는 게임의 백엔드 용입니다. 나는 서버가 완료 시간에 사용자의 "직업"의 상태를 확인하고 게임 상태에 필요한 하우스 키핑을 수행 할 필요가있다.

저는 Redis, Celery, Beanstalkd, ZeroMQ 외 다수에 익숙하지만, 앞으로 실행될 단일 작업 단위 일정에 대한 정보를 찾지 못했습니다. (또는 설정된 시간에 대기열에서 튕겨 나옴) Celerybeat에는 cron 유형 반복 작업에 대한 스케줄러가 있지만 일회용으로는 아무 것도 볼 수 없었습니다.

* nix에서 "at"명령도 보았습니다. 그러나 작업을 관리하는 데 도움이 될 프론트 엔드를 알지 못합니다.

Redis에서 키를 주문하고 블로킹 팝을하는 것과 같은 쉬운 솔루션이 있다는 것을 알고 있지만 계속 대기열을 폴링하지 않아도 다음 작업이 준비되었는지 확인할 수 있습니다.

내가 찾은 가장 가까운 것은 GAE의 지연된 라이브러리이지만 다른 구성 요소와 함께 내 자신의 Linux 상자에서 실행되는 것을 기대하고있었습니다.

의견을 보내 주시면 감사하겠습니다.

+0

경우, 나는 내가 찾던 것을 찾은 것 같아요. Beanstalkd는 지연된 대기열에 작업을 대기시키고 지정된 시간 (초) 후에 대기열에 넣는 "지연"매개 변수를 가지고 있습니다. – Scott

답변