中央キャッシュ
Logto は、Redis®1 を既知データの中央キャッシュとして使用することをサポートしています。中央キャッシュを使用することで、Logto はレスポンスを生成するために必要なデータベースクエリの数を減らし、エンドユーザーの体験を大幅に高速化できます。
通常、キャッシュは既知データ専用に設計されているため、公開することができます。現時点では、Logto は認証 (Authentication) または認可 (Authorization) を必要とするデータを保存していません。
最良のセキュリティプラクティスを確保するために、キャッシュへのアクセスを制限することをお勧めします。
接続の設定
キャッシュを有効にするには、稼働中の Redis 6.0 インスタンスが必要です。Logto がキャッシュに接続して使用するためには、REDIS_URL
環境変数を Redis 接続文字列に設定します。接続文字列は、非セキュア接続の場合は "redis" プロトコル (redis://
) で始まり、TLS 経由の接続の場合は "redis" プロトコル (redis://
) で始まる必要があります。
例:
REDIS_URL=redis://your-redis-username:[email protected]:6380
接続文字列のほとんどの部分は省略可能です。以下の例では、ユーザー名とポートを省略し、"redis" プロトコルを使用して接続文字列を構成しています:
REDIS_URL=redis://:[email protected]
パスワードに特殊文字が含まれている場合は、URI エンコードする必要があります:
# パスワードが "foo=" の場合
REDIS_URL=redis://:foo%[email protected]
すべてのデフォルト値が使用されている場合、便宜上、変数を真値に設定することができます:
REDIS_URL=1 # または "true", "yes"
StackExchange.Redis 文字列はサポートされていません。
キャッシュが機能しているか確認する
キャッシュが正しく接続されているか確認するには、Logto の起動時に次のメッセージが表示されるはずです:
[CACHE] Connected to Redis
さらに、リクエストがキャッシュにヒットした場合(例えば、GET /api/.well-known/phrases
に複数回アクセスすることによって)、次のメッセージがコンソールに表示されます:
[CACHE] Well-known cache hit for ...
Footnotes
-
Redis は Redis Ltd. の登録商標です。これに関する権利はすべて Redis Ltd. に帰属します。Silverhand による使用は参照目的のみであり、Redis と Silverhand の間にスポンサーシップ、承認、または提携を示すものではありません。 ↩