AWS服务器Redis连接报MOVED 7369错误,本地正常求排查解决
解决Predis连接AWS ElastiCache集群出现MOVED错误的问题
首先,这个MOVED 7369 10.0.213.16:6379错误是Redis集群的典型重定向响应——你连接的AWS ElastiCache是集群模式的Redis实例,而你的Predis客户端目前是以单节点模式初始化的,它不会自动处理Redis集群的节点重定向逻辑,所以抛出了这个异常。
本地环境运行正常是因为你本地用的是单节点Redis,不存在跨节点的key路由问题,自然不会触发MOVED重定向。
修复步骤
你只需要在Predis的配置选项中开启集群支持即可,修改后的代码如下:
$parameters = array( "scheme" => "tcp", "host" => "testingredis.akf46e.clustercfg.use1.cache.amazonaws.com", "port" => 6379, "database" => 0, ); // 关键:添加集群模式配置 $options = array( 'cluster' => 'redis', ); $db = new Predis\Client($parameters, $options);
额外注意事项
- AWS ElastiCache的集群配置端点(你用的
testingredis.akf46e.clustercfg.use1.cache.amazonaws.com)会自动路由请求到正确的节点,但前提是客户端要支持集群模式 - 确保你的Predis版本是支持集群的(一般2.x及以上版本都支持,如果你用的是老版本可能需要升级)
- 如果还有连接问题,检查AWS安全组是否允许你的ECS/EC2实例访问ElastiCache的6379端口
内容的提问来源于stack exchange,提问作者Sravan
相关产品推荐
相关产品推荐

