国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - laravel配置Redis多個庫的實現方法

laravel配置Redis多個庫的實現方法

2021-07-31 15:58haoyq PHP教程

這篇文章主要介紹了laravel配置Redis多個庫的實現方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

c導語

經過編譯安裝和安裝擴展之后,Redis 已經可以正常使用了。但是在 laravel 中還需要其他的操作。

安裝擴展

要想在 laravel 中使用 Redis,還需要安裝 predis 擴展。使用 composer require predis/predis 進行安裝就可以了。

修改配置

  1. Redis 的配置在 config/database.php 文件,根據需求修改,我這里不需要改動;
  2. 設置 Cache 默認緩存為 Redis,在 .evn 文件中 CACHE_DRIVER=redis;
  3. 設置 Session 的驅動為 Redis,在 .env 文件中 SESSION_DRIVER=redis;

配置多個庫

經過以上的配置后,多個服務都使用 Redis,如果都使用同一個庫,這顯然是不合理的。我們可以配置多個連接來解決這個問題。
Redis 默認有 16 個庫,在服務器中設置 redis.confdatabase 值可以修改。

先來看下 config/database.php 的默認連接

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'redis' => [
 
    'client' => 'predis',
 
    'default' => [
      'host' => env('REDIS_HOST', '127.0.0.1'),
      'password' => env('REDIS_PASSWORD', null),
      'port' => env('REDIS_PORT', 6379),
      'database' => env('REDIS_DB', 0),
    ],
 
    'cache' => [
      'host' => env('REDIS_HOST', '127.0.0.1'),
      'password' => env('REDIS_PASSWORD', null),
      'port' => env('REDIS_PORT', 6379),
      'database' => env('REDIS_CACHE_DB', 1),
    ],
  
  ],

默認是有兩個連接的,分別是 defaultcache。下面來看下 config/cache.php 中關于 Redis 的配置

?
1
2
3
4
'redis' => [
      'driver' => 'redis',
      'connection' => 'cache',
    ],

可以看到它的 connection 值是 cache,也就是使用 config/database.php 中 Redis 的 cache

下面修改 config/database.php 的 Redis,添加一個 session 的連接,如下

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
'redis' => [
 
    'client' => 'predis',
 
    'default' => [
      'host' => env('REDIS_HOST', '127.0.0.1'),
      'password' => env('REDIS_PASSWORD', null),
      'port' => env('REDIS_PORT', 6379),
      'database' => env('REDIS_DB', 0),
    ],
 
    'cache' => [
      'host' => env('REDIS_HOST', '127.0.0.1'),
      'password' => env('REDIS_PASSWORD', null),
      'port' => env('REDIS_PORT', 6379),
      'database' => env('REDIS_CACHE_DB', 1),
    ],
 
    'session' => [
      'host' => env('REDIS_HOST', '127.0.0.1'),
      'password' => env('REDIS_PASSWORD', null),
      'port' => env('REDIS_PORT', 6379),
      'database' => env('REDIS_SESSION_DB', 2),
    ],
 
  ],

接下來在 .env 中添加 SESSION_CONNECTION=session。

測試

經過上面的操作,已經修改好了??偨Y下就是 default 使用的是 0 庫,cache 使用的是 1 庫,session 使用的是 2 庫。

使用如下代碼來測試下

?
1
2
3
4
5
6
7
8
9
10
11
12
/**
   * 測試 Redis 的存儲
   */
  public function testRedis()
  {
    // Redis 門面
    Redis::setex('facades', 30, 'i am facades');
    // Cache
    Cache::put('cache', 'i am cache', now()->addMinute(30));
    // 因為 Cache 默認是 Redis,所有和上面語句相同
    // Cache::store('redis')->put('cache', now(), now()->addMinute(30));
  }

運行以上代碼之后,在服務器中使用 redis-cli 來看下存儲情況

laravel配置Redis多個庫的實現方法

可以看到各個庫的存儲情況

  1. 使用 Redis 門面操作,默認為 config/database.php 中 Redis 的 default 連接,數據存入 0 庫;
  2. 使用 Cache 操作,因為 config/cache.php 中 Redis 的 connection 設置為 cache,理所當然存入的是 1 庫;
  3. Session 也根據 SESSION_CONNECTION=session 配置,正確的存入了 2 庫;

使用 Redis 門面的時候,也可以指定連接

?
1
2
$redis = Redis::connection('session');
$redis->setex('facades_connection', 30, 'i am facades_connection');

laravel配置Redis多個庫的實現方法

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://segmentfault.com/a/1190000018811316

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久在线 | 国产精品美女久久久久高潮 | 无码日韩精品一区二区免费 | 久久九| 免费观看h片 | 国产第一区在线观看 | 一区二区三区视频 | 久草天堂 | av有声小说一区二区三区 | 欧美一区二区三区四区不卡 | 一区久久 | 国精产品99永久一区一区 | 欧美一区第一页 | 每日更新亚洲 | 91精品一区二区三区久久久久久 | 亚洲精品免费在线 | 夜夜夜久久久 | 一级做a爰片久久毛片免费陪 | 在线播放亚洲 | 久久精品亚洲 | 国产精品成人一区二区三区 | www.xxx在线观看 | 欧美精品在线一区二区三区 | 青草国产 | 蜜桃色网| 成人伊人| 黄毛片视频 | 深夜影院深a | 精品成人免费一区二区在线播放 | 毛片免费在线 | 成人免费毛片高清视频 | 日韩福利视频 | 中文字幕在线观看一区二区三区 | 欧美午夜在线观看 | 欧美日韩一区二区在线观看 | 免费看黄色电影 | 亚洲国产99 | 日韩在线视频观看 | 欧美一区二区三区免费 | 日韩免费av一区二区 | 免费观看www7722午夜电影 |