Hyperf模型缓存使用阿里云redis集群问题

问题

使用Hyperf框架的模型缓存,服务器是阿里云的redis企业版集群,当使用Model::findManyFromCache时发现报错,而在单机redis的时候不会出现问题

最后追踪到vendor/hyperf/model-cache/src/Redis/HashGetMultiple.php的getScript方法,

Hyperf模型缓存使用阿里云redis集群问题_第1张图片

 

 

正是因为这段脚本出现了问题。然后去翻阿里云文档,发现

Hyperf模型缓存使用阿里云redis集群问题_第2张图片

 

 

看到这里就明白解决方案了。因为hyperf的模型缓存底层确保了所有key是在同一个slot的,参考redis的hash tag;

所以修改阿里云的配置script_check_enable为1就好了。

 

参考链接:阿里云:https://help.aliyun.com/document_detail/145968.html?spm=a2c4g.11186623.6.614.63571ae8xNWw0M

你可能感兴趣的:(hyperf,阿里云,redis,缓存)