【redis配置项-数据库通知】

Redis2.8引入了数据库通知功能,允许客户端通过发布/订阅获取键变化和命令执行信息。键空间通知关注于键执行的命令,如K(keyspace@)和E(keyevent@)前缀的事件。例如,设置`notify-keyspace-events Ex`可监听过期事件。默认情况下,通知是关闭的。配置文件修改是启用此功能的关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

redis.conf

notify-keyspace-events Esx$g

数据库通知介绍

数据库通知 是 Redis 2.8 版本新增加的功能,这个功能可以让客户端通过发布/订阅给定的频道或者模式,来获知数据库中键的变化,以及数据库中命令的执行情况。

分类:

键空间通知:某个键执行了什么命令(key-space notification)
键事件通知:某个命令被什么键执行了(key-event notification)

K 键空间通知,以 keyspace@ 为前缀
E 键事件通知, 以keyevent@ 为前缀
g del,expire,rename等无关的通用命令的集合
$ String命令
l List命令
s Set命令
h Hash命令
z 有序集合命令
x 过期事件(key过期时生成)
e 驱逐事件(内存满了,key被清除时)
A 以上 g$lshzxe的集合,AKE 代表接收全部的通知
第一步,redis配置文件的修改;
过期事件,属于键事件通知,因此在监听过期事件时,需要在集群中的每个redis的配置文件中写上:notify-keyspace-events Ex
默认notify-keyspace-events “”,不接收任何通知。

### Redis 配置文件示例及参数说明 #### 1. 基本配置项 Redis 的配置文件通常命名为 `redis.conf`,以下是部分重要配置项及其解释: - **端口号** 设置 Redis 实例监听的 TCP 端口。 ```properties port 6379 ``` - **绑定地址** 绑定本地 IP 地址,如果设置为 `0.0.0.0` 则表示允许所有网络接口连接。 ```properties bind 127.0.0.1 ``` - **日志级别** 日志记录等级分为四个级别:debug、verbose、notice 和 warning。建议生产环境使用 notice 或者更高级别。 ```properties loglevel notice ``` - **持久化策略** 支持两种主要方式 RDB 快照和 AOF 追加只读文件[^4]。 - 开启RDB快照 当满足特定条件时触发数据集快照并写入磁盘。 ```properties save 900 1 save 300 10 save 60 10000 ``` - 启用AOF持久化 将每次写命令追加到日志中以便恢复。 ```properties appendonly yes ``` #### 2. 性能调优选项 为了优化性能表现,还可以调整如下几个关键参数: - **最大可用内存** 定义服务器可使用的最大内存量,单位字节;当达到上限时会执行 LRU 清理算法删除过期键值对。 ```properties maxmemory 1gb ``` - **客户端查询缓冲区限制** 控制单个客户端发送的最大未处理命令长度,防止恶意攻击造成资源耗尽[^3]。 ```properties client-output-buffer-limit normal 0 0 0 client-output-buffer-limit slave 256mb 64mb 60 client-output-buffer-limit pubsub 32mb 8mb 60 ``` - **虚拟内存支持** 可选功能用于缓解物理 RAM 不足的情况,通过交换机制把不活跃的数据迁移到硬盘上存储。 ```properties vm-enabled no ``` #### 3. 复制与集群特性 对于高可用性和扩展性的需求,可以通过以下配置实现主从同步以及分布式部署方案: - **主从复制** 指定一个或多个 Slave 节点来接收 Master 发送过来的变化通知,并保持一致状态。 ```properties replicaof master_ip_address master_port_number ``` - **哨兵监控** 使用 Sentinel 来监视整个集群的状态变化,自动完成故障转移过程。 ```bash sentinel monitor mymaster 127.0.0.1 6379 2 ``` 以上只是部分常用配置项展示,在实际应用过程中还需要根据具体业务场景灵活定制更多细节设定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值