RequestRateLimiter redis相关问题
来源:10-16 Spring Cloud Gateway限流
zzz_00
2022-11-17
目前代码调试正常:配置如下
问题:过程中出现 ERR bad lua script for redis cluster, all the keys that the script uses should be passed using the KEYS array, and KEYS should not be in expression. 错误提示。发现是阿里云redis中script_check_enable参数为1导致,需要修改为0即可解决该问题。有个顾虑是这个参数是对lua脚本进行格式限制的,冒然改了会不会对其他方面产生影响,希望老师给点建议
写回答
1回答
-
非常棒的问题!报错的原因,是因为Redis Cluster要求操作要在相同slot上,而script_check_enable用来检查这一点。
早期,gateway中限流使用的lua脚本有问题,不支持Cluster,现在已经解决了。
可以看看下面两个链接。要想解决,理论上升级gateway版本到最新就可以了(可以只升级gateway这一个服务,其他的不升级)
https://github.com/spring-cloud/spring-cloud-gateway/pull/1016
042022-11-22
相似问题