溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Laravel中怎么使用Redis

發布時間:2021-06-12 16:48:42 來源:億速云 閱讀:234 作者:小新 欄目:編程語言

小編給大家分享一下Laravel中怎么使用Redis,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

一、前言

Redis 是一個開源高效的鍵值對存儲系統,它通常用作為一個數據結構服務器來存儲鍵值對,它可以支持字符串、散列、列表、集合、有序集合。

1. 安裝 predis/predis

在 Laravel 中使用 Redis 之前,你需要通過 Composer 來安裝 predis/predis 包(~1.0):

$ composer require predis/predis

2. 配置

Redis 的配置文件在 config/database.php。在該文件中,我們可以看到一個包含 Redis 服務信息的配置數組,如下:

'redis' => [
    'cluster' => false,
    'default' => [
        'host' => env('REDIS_HOST', 'localhost'),
        'password' => env('REDIS_PASSWORD', null),
        'port' => env('REDIS_PORT', 6379),
        'database' => 0,
    ],

],

然后在 .env 文件中配置如下三項為自己的信息:

REDIS_HOST=127.0.0.1REDIS_PASSWORD=nullREDIS_PORT=6379

對于開發來說,默認的配置已經完全可以滿足大部分的應用了。但是,你可以自由的在你環境中修改這個配置。你可以簡單的添加 Redis 服務的名稱,并且指定相應的服務器地址和端口。

cluster 選項會告訴 Laravel Redis 客戶端在你的 Redis 集群中進行客戶端的分片,這樣就可以構成節點池并且創建大量有效的 RAM。但是,你需要注意的是客戶端分片并不能處理故障轉移。因此,它主要用來從一個主要數據存儲地址獲取可用的緩存數據。

另外,你可以在你的 Redis 連接定義里添加一個 options 數組,這樣你可以指定 Predis 的客戶端選項。

如果你的 Redis 服務器引入了認證機制,那么你需要在你的 Redis 服務配置數組中添加一個  password 配置項來提供憑證。

二、與 Redis 進行交互

在 Laravel 中,我們可以通過使用 Redis 假面 的各種方法來與 Redis 進行交互。Redis 假面支持動態方法,這意味著我們可以在 Redis 假面上調用任何的 Redis 命令,假面會直接將命令傳遞給 Redis。

1. 基本使用

下面演示 Redis 的 string 類型使用:

<?phpnamespace App\Http\Controllers;use Illuminate\Support\Facades\Redis;class RedisController extends Controller{
    public function set()    {
        Redis::set('name', 'sean');
    }

    public function get()    {
        $name = Redis::get('name');
        var_dump($name);
    }
}

2. 使用多個 Redis 連接

可以通過使用 Redis::connection 方法來獲取 Redis 的實例:

$redis = Redis::connection();

這會返回默認的 Redis 服務器的實例。如果你沒有使用集群服務,你可以傳遞配置文件中所定義的服務名稱到 connection 方法中:

$redis = Redis::connection('other');

3. 管道命令

管道流水線可以允許你在一個操作中對 Redis 服務器執行多個命令。pipeline 方法接收一個參數:Closure ,它會接收 Redis 的實例。你可以在閉包中發布所有的命令,它們將會在一個操作中進行處理:

Redis::pipeline(function ($pipe) {
    for ($i = 0; $i < 1000; $i++) {
        $pipe->set("key:$i", $i);
    }
});

以上是“Laravel中怎么使用Redis”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女