CLIENT TRACKING ON|OFF [REDIRECT client-id] [PREFIX prefix [PREFIX prefix ...]] [BCAST] [OPTIN] [OPTOUT] [NOLOOP]

このコマンドは、サーバ支援のクライアント側キャッシュに使われる Redis サーバの追跡機能を有効にします。

追跡が有効になっている場合、Redis は接続が要求したキーを記憶し、そのようなキーが変更された時に後で無効化メッセージを送信します。無効化メッセージは同じ接続で送信されるか (RESP3 プロトコルが使われている時のみ利用可能)、別の接続でリダイレクトされます (RESP2 と Pub/Sub でも利用可能)。このプロトコルに参加しているクライアントが、要求したキーに関係なく、指定されたキープレフィックスを購読するだけで全ての通知を受信する特別なブロードキャストモードを使うことができます。引数の複雑さを考えると、詳細についてはメインのクライアント側キャッシュのドキュメントを参照してください。このマニュアルページはこのサブコマンドのオプションのリファレンスにすぎません。

追跡を有効にするには、以下を使います:

CLIENT TRACKING on ... options ...

この機能は、ある時点で CLIENT TRACKING off にしてトラッキングをオンにしない限り、現在の接続でその存続期間中アクティブなままになります。

以下は、追跡を有効にする時のコマンドの動作を変更するオプションのリストです:

  • REDIRECT <id>: 指定された ID の接続にリダイレクトメッセージを送信します。接続が存在している必要があり、CLIENT ID を使ってそのような接続の ID を取得できます。リダイレクト先の接続が終了した場合、RESP3 モードでは、トラッキングが有効になっている接続は、状態を通知するために tracking-redir-broken プッシュメッセージを受信します。
  • BCAST: ブロードキャストモードでの追跡を有効にします。このモードでは、接続によって要求されたキーに関係なく、指定された全てのプレフィックスについて無効化メッセージが報告されます。代わりに、ブロードキャストモードが有効になっていない場合、Redis は読み取り専用コマンドを使ってフェッチされたキーを追跡し、そのようなキーについてのみ無効化メッセージを報告します。
  • PREFIX <prefix>: ブロードキャストの場合、指定されたキープレフィックスを登録して、この文字列で始まるキーに対してのみ通知が提供されるようにします。このオプションを複数回指定して、複数のプレフィックスを登録できます。このオプション無しでブロードキャストが有効になっている場合、Redis は全てのキーについて通知を送信します。
  • OPTIN: ブロードキャストがアクティブでない場合、CLIENT CACHING yes コマンドの直後に呼び出されない限り、通常は読み取り専用コマンドのキーを追跡しません。
  • OPTOUT: ブロードキャストがアクティブでない場合、CLIENT CACHING no コマンドの直後に呼び出されない限り、通常は読み取り専用コマンドのキーを追跡します。
  • NOLOOP: この接続自体によって変更されたキーに関する通知を送信しないでください。

*返り値

Simple string reply: 接続が正常に追跡モードになった場合、あるいは追跡モードが正常に無効になった場合は OK です。そうでなければエラーが返されます。

TOP
inserted by FC2 system