redis有关key过期消息监听不到问题排查

988 阅读1分钟

1.线上redis环境服务器能否连通访问?

答:set和get进行赋值

2.客户端是否注册到线上环境

client Id是否有对应客户端的ip

查询对应的客户端的地址sub,psub是否有值,如果没有代表没有监听主题或者模式消息

3.如果注册上去,排查redis服务器有没有发送消息

查询redis的pub日志

4.查询redis服务器的过期等事件是否关闭了

image.png 如果 CONFIG GET notify-keyspace-events 命令返回了 gxe,那么这表示已经启用了键空间通知,并且已经启用了 g、x 和 e 这三个事件类型的通知。具体含义如下:

  • g 表示通用的(general)命令事件通知,即所有普通键操作的事件。
  • x 表示键过期事件通知。
  • e 表示键驱逐(evicted)事件通知,当某个键因为内存淘汰而被删除时触发。

image.png 这个就是没有开启相应的权限。

5.redis重启会用默认的配置文件,如果配置文件路径修改了,需要手动修改配置脚本显示指定配置文件的路径

1.排查redis的配置文件是不是默认的:/etc/redis/redis.conf
2.不是默认的,修改进行下面的操作
    1.编辑 Redis 的 Systemd 服务文件,通常位于 /etc/systemd/system/redis.service。
    2.在服务文件中,使用 ExecStart 指定 Redis 启动命令,并通过 -c 参数指定配置文件路径,例如:
    ExecStart=/path/to/redis-server /path/to/redis.conf