Laravel 在不同專案共用 Redis


#Laravel#Redis

連接同一台 Redis 後,只要將兩個專案 evn 中 REDIS_PREFIX、CACHE_PREFIX 分別設定同一個值即可。
Laravel Redis Cache Key 會使用 REDIS_PREFIX、CACHE_PREFIX 組合出 Key。

Redis Cli

127.0.0.1:6379> SELECT 1
OK
127.0.0.1:6379[1]> KEYS *
 1) "app_name_database_app_name_cache_:cache-key-1"
 2) "app_name_database_app_name_cache_:cache-key-2" 

config/database.php

<?php

use Illuminate\Support\Str;

return [

	// 略...

	'redis' => [

	    'client' => env('REDIS_CLIENT', 'phpredis'),

	    'options' => [
	        'cluster' => env('REDIS_CLUSTER', 'redis'),
	        'prefix' => env('REDIS_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_database_'),
	    ],
	],


	// 略...
];

config/cache.php

<?php

use Illuminate\Support\Str;

return [

	// 略...

	'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_cache_'),

];