predis ERR unknown command 'EVAL'
laravel版本:5.5.36
redis版本:3.06
在laravel项目中引用predis的时候,我在本地windows环境没有问题,但是到生产环境就有问题了。
我的代码如下:
public function getPhoneCode()
{
Cache::rememberForever('getAllPhoneCodeMultiViewData', function () {
return Area::where('status', 1)
->whereIn('level', [2, 3])
->orderBy('pinyin', 'asc')
->get(['id', 'english_name', 'chinese_name', 'iso2', 'area_phone_number', 'pinyin']);
});
return Cache::get('getAllPhoneCodeMultiViewData');
}
缓存配置使用的是redis,生产环境报错如下:
exception=PredisResponseServerException
file=/bcc/production/BCCKidV1.0/vendor/predis/predis/src/Client.php
line=370
message=ERR unknown command 'EVAL'
class : "PredisClient"
file : "/bcc/production/BCCKidV1.0/vendor/predis/predis/src/Client.php"
function : "onErrorResponse"
line : 335
type : "->"
请问这是怎么回事?我的redis是在2.6已上
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
redis 版本低的问题,没有eval 命令
详见
我也出现了这个问题,是redis集群的原因,
1、config/queue.php文件connections.redis.queue 改为'{default}'
2、队列也加上{}
php artisan queue:listen --queue={high},{default},{low} --sleep=3 --tries=3 --timeout=0
你好,这个问题解决了么? 我也遇到这个问题了, 如果解决了、求帮助