laravel 配置redis后怎样使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel 配置redis后怎样使用相关的知识,希望对你有一定的参考价值。

参考技术A 在Web开发中,我们经常会遇到需要批量处理任务的场景,比如群发邮件、秒杀资格获取等,我们将这些耗时或者高并发的操作放到队列中异步执行可以有效缓解系统压力、提高系统响应速度和负载能力。 实现队列有多种方式,Laravel也支持多种队列实现驱...

Redis 连接 [缓存] 未配置 laravel 错误

【中文标题】Redis 连接 [缓存] 未配置 laravel 错误【英文标题】:Redis connection [cache] not configured error with laravel 【发布时间】:2019-04-22 19:53:42 【问题描述】:

我正在尝试在 laravel 中使用 redis 进行缓存。

我已经在本地安装了 redis,并且我知道它正在工作,因为我能够运行水平队列和工作程序。

我在做的时候也得到了回应

redis-cli PING

但是当我尝试这段代码时

$user = Cache::get('User:' .$Id , function ($Id) 
    return User::where('id', '=', $Id)->firstOrFail();
);

我得到了错误

 Redis connection [cache] not configured.

我已将我的 .env 更改为具有以下条目

CACHE_DRIVER=redis

【问题讨论】:

【参考方案1】:

你可以像这样在config/database.php中设置redis配置

'redis' => [

        'client' => 'predis',

        'default' => [
            'host' => env('REDIS_HOST', '127.0.0.1'),
            'password' => env('REDIS_PASSWORD', 'footbar'), //if password otherwise set null 
            'port' => env('REDIS_PORT', 6379),
            'database' => 0,
        ],

    ],

.env 文件中的其他设置

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

然后运行 ​​artisan 命令

php artisan config:cache
php artisan config:clear 

【讨论】:

【参考方案2】:

cache.php找到这个

    'redis' => [
        'driver' => 'redis',
        'connection' => 'cache',
    ],

并将其更改为:

    'redis' => [
        'driver' => 'redis',
        'connection' => 'default',
    ],

【讨论】:

【参考方案3】:

第 1 步:配置:config/database.php 添加以下数组

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

第 2 步:配置:.env 文件

CACHE_DRIVER=redis
REDIS_DATABASE=0 

第 3 步:配置/cache.php

'redis' => [
        'driver' => 'redis',
        'connection' => 'default',
    ],

【讨论】:

【参考方案4】:

除其他答案外,如果您使用 redis 作为队列驱动程序,请验证 queue.phpconfiguration 文件中的 redis 连接是否设置为“默认”。

【讨论】:

以上是关于laravel 配置redis后怎样使用的主要内容,如果未能解决你的问题,请参考以下文章

Laravel Redis分布式锁的使用

如何在子目录 Laravel 中正确配置 htaccess?

laravel中redis的配置和使用

php laravel框架学习笔记 基本工作原理

我想自学laraver,请诸位前辈给一些建议,谢谢

Laravel中的信息验证 和 语言包