sql >> データベース >  >> NoSQL >> Redis

RQ-キューを空にして削除する

    rqを使用したクリーンアップ

    RQは、キューを空にする方法を提供します:

     >>> from redis import Redis>>> from rq import Queue>>> qfail =Queue( "failed"、connection =Redis())>>> qfail.count8>>> qfail.empty( )8L>>> qfail.count0  

    testについても同じことができます まだ存在している場合は、キューに入れます。

    rq-dashboardを使用したクリーンアップ

    rq-dashboardをインストールします:

      $ pip install rq-dashboard  

    開始する:

      $ rq-dashboardRQ Dashboard、バージョン0.3.4*http://0.0.0.0:9181/で実行 

    ブラウザで開きます。

    キューを選択

    赤いボタン「空」をクリックします

    これで完了です。

    Python関数のパージジョブ

    RQで使用されるコマンドで失敗する古いRedisを実行した場合でも、Pythonコードによるジョブの削除に成功する可能性があります:

    コードはキューの名前を取ります。ここにジョブIDがあります。

    UsilgLPOPはジョブIDを1つずつ要求します。

    ジョブIDにプレフィックス(デフォルトでは「rq:job:」)を追加すると、キーがあり、ここにジョブが保存されます。

    各キーでDELを使用して、データベースジョブをジョブごとにパージします。

     >>> import redis>>> r =redis.StrictRedis()>>> qname ="rq:queue:failed">>> def purgeq(r、qname):... while True: ... jid =r.lpop(qname)... jidがNoneの場合:... break ... r.delete( "rq:job:" + jid)... print jid ...>>>パージ(r、qname)a0be3624-86c1-4dc4-bb2e-2043d2734b7b3796c312-9b02-4a77-be89-249aa7325c25ca65f2b8-044c-41b5-b5ac-cefd56699758896f70a7-9a35-4f6b-b122-a08513022bc5  

    1. コマンドまたはLUAスクリプトを使用してRedisに保存されている複数のセットを読み取る方法

    2. 6つの最高のMapReduceジョブ最適化手法

    3. DevOpsオープンソースデータベース監査マニュアル-知っておくべきことすべて

    4. ソートされたセットRedisをどのように組み合わせるのですか?