#Redis是一種存在記憶體的輕量化資料庫,與mySql的差異在於它沒有這些欄位的關聯,適合用來做效能的優化

#而預設的redis主要是phpredis,而phpredis是比較難安裝,故這邊先使用predis做處理,而效能上phpredis會是較好的

1.首先先根據官網文件做composer安裝

1630320533709.jpg

composer require predis/predis

2.安裝完成後修改database.php 的config設定找到redis,預設為phpredis

'redis' => [

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

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

3.接著使用tinker測試操作redis

需要先在tinker下引用use Illuminate\Support\Facades\Redis;

1630331459015.jpg

1630331587401.jpg

4.確定可以使用後,來製作API端點,利用redis幫我塞product資料

開啟ToolController增加一個function ,並將資料轉成JSON格式放入,

這邊需要引入redis套件use Illuminate\Support\Facades\Redis;

利用Redis::set()將資料塞入,因為要丟進去的資料是一個php陣列的結構,所以要先將資料庫的資料(object)轉成json_encode

public function createProductRedis()
    {
        Redis::set('products' , json_encode(Product::all()));
    }
}