laravelで設定されているredisのデフォルト値について

Laravelで下記のような設定がありますね! laravel5.5の設定ファイルです。

github.com

    'redis' => [
        'client' => 'predis',
        'default' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', null),
            'port' => env('REDIS_PORT', 6379),
            'database' => 0,
        ],

この設定について少し調べてみました。 HOSTはまあ、置いといて、PORT番号ですね。

redisでは 6379でコネクションを受けるようにデフォルトで設定されているようです!

設定ファイル — redis 2.0.3 documentation

なので、laravelでもデフォルトで6379が指定されています。

次にdatabaseです。 下記の記事にもある通り、redisのdatabaseは整数値で識別しているようです! デフォルトでは0が自動的に選ばれます。そのため、Laravel側も0を選択するようにしているようです。 こちらも上記のドキュメントに記載さています。

データベースの番号を設定します。デフォルトのデータベースは DB 0 です。ユーザは、 SELECT を使うことで、コネクションごとに違うデータベースを選択することができます。この dbid には、0から、 databases - 1 まで設定できます。

所感

複数アプリで同じredisのDBを使っていると、いずれキャッシュのkeyがかぶったりなどと事故が起きる可能性があります! そのため、keyを作成する際はアプリごとのプレフィックスをつけるなど、チーム、またはプロジェクト全体での制約を設けることが必要だと感じました!