使用Predis使用Laravel-5.4.32配置AWS ElasticCache redis Cluster-3.2.4

时间:2017-08-14 03:31:55

标签: php amazon-web-services laravel-5 redis elastic-beanstalk

我正在尝试在Laravel-5.4.32上使用ElasticCache Redis群集(启用群集模式而不是哨兵),但收到以下错误:

1/1)ServerException MOVED 13491 10.0.1.199:6379

我的database.php如下所示:

'redis' => [

    'client' => 'predis',
    'cluster' => true,

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

],

使用.env文件提供REDIS_HOST值。 我的应用程序适用于单个redis实例。

1 个答案:

答案 0 :(得分:0)

以下配置对我有用:

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

实际上,laravel文档中明确提到了这一点:https://laravel.com/docs/5.4/redis#configuration