私は、一時的な(非繰り返しの)タスクをキューに入れ、将来特定の時間に実行させる軽量システムを探しています。一度限りのタスクの遅延実行のためのキューの提案
これは、ユーザーが時間ベースのタスクを実行するゲームのバックエンド用です。私はサーバーが完了時にユーザーの "仕事"のステータスをチェックし、ゲーム状態で必要なハウスキーピングを実行する必要があります。
私はRedis、Celery、Beanstalkd、ZeroMQ、などに多少慣れていますが、将来実行される単一の作業単位のスケジューリングに関する情報は見つかりませんでした。 (または設定された時間にキューをポップする)Celerybeatにはcronタイプの定期的なタスクのスケジューラーがありますが、一回限りのものは見ませんでした。
* nixの "at"コマンドも見てきましたが、私はジョブの管理に役立つフロントエンドを認識していません。
私は、Redisのキーを注文してブロッキングポップを行うなどの簡単な解決策があることを認識していますが、次のジョブが準備完了しているかどうかを連続的にポーリングする必要はありません。
私が見つけた最も近いのは、GAEの遅延ライブラリですが、他のコンポーネントと一緒に自分のLinuxボックスで実行されるものを期待していました。
ご意見ありがとうございます。
場合、私は私が探していたものを見つけたと思います。 Beanstalkdには、遅延キューにジョブをキューイングし、指定された秒数後にレディキューに配置する「遅延」パラメータがあります。 – Scott