首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Elasticache Redis AWS在Laravel中移动异常

Elasticache Redis AWS在Laravel中移动异常
EN

Stack Overflow用户
提问于 2017-09-22 05:51:15
回答 1查看 2.7K关注 0票数 1

我正在使用Laravel5.2,并且有一个多服务器自动标度的体系结构。我想让会话和缓存集中在一个位置。我也想使用AWS弹奏缓存。

我已经设置了一个具有以下选项的elasticache集群:

参数组: default.redis.3.2.cluster.on碎片:3个总节点:9个

在laravel会话配置中,我已经将redis设置为会话驱动程序。

在设置redis配置的database.php中,我使用了以下方法:

REDIS_HOST=my_aws_elasticache_configuration_endpoint REDIS_PASSWORD=null REDIS_PORT=6379 .

当我尝试使用它时,我会得到以下错误:

移动13841 some_ip_address_of_aws:6379

我试过用本地的红宝石,所以predis的工作正常。我试着在网上查看解决方案,但无法得到解决方案。我相信配置端点正在尝试将redis连接重定向到我拥有的9个节点中的一个可用节点url。但是,我已经预料到AWS应该在内部完成它,而不是抛出异常。有谁可以帮我?

EN

回答 1

Stack Overflow用户

发布于 2017-09-22 07:38:24

我终于得到了答案,我们需要在数据库设置中启用集群模式,并将新的集群选项设置为redis。database.php中的redis配置如下所示:

代码语言:javascript
复制
'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,
            ],
        ],
    ],
],

如果您有密码,则可以将选项数组替换为:

代码语言:javascript
复制
 'options' => [
        'cluster' => 'redis',
        'parameters' => ['password' => env('REDIS_PASSWORD', null)],
    ],
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46357691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档