解决Spring session报错JedisDataException: ERR unknown command 'CONFIG'

时间:2022-02-16 16:34:03

在线上部署服务时,spring-session报了一个redis的错误,如下:

redis.clients.jedis.exceptions.JedisDataException: ERR unknown command 'CONFIG'

原因是spring-session调用了CONFIG命令来配置Keyspace notifications功能。而线上环境的redis基于权限的考虑,禁止应用服务执行CONFIG命令,这样就导致了应用在初始化时抛出此异常。

解决方案:

1、打开redis的Keyspace notifications功能,在redis.conf配置文件里添加下面的配置项:

notify-keyspace-events Ex 

修改配置后,需要重启redis服务器

2、关闭Spring-session使用CONFIG命令做操作

@Bean
public static ConfigureRedisAction configureRedisAction() {
return ConfigureRedisAction.NO_OP;
}

到此,问题就可以解决了