标签:key 版本 redis 线程 io 6.0 normaluser 服务端 客户端
1. 多线程处理网络请求
redis网络io处理是性能瓶颈,单个主线程处理网络请求的速度跟不上底层网络硬件的速度
6.0采用多个线程来处理网络io提升网络请求处理的并行数 对于读写操作还是使用单线程 当主线程处理完命令之后 将结果写入缓冲区 等待io线程写回socket
所以io线程负责读写socket
io-threads-do-reads yes 需要配置手动开启
io-threads 6 配置线程数 要小于所在实例cpu核心数
2. 客户端缓存
服务端协助的客户端缓存功能 这就有一个问题,当数据被修改了如何通知客户端数据失效了
- 普通模式
在服务端记录客户端读取过的key,当key有修改,服务端给客户端发送invalidate消息 并且只会报告一次
CLIENT TRACKING ON|OFF
- 广播模式
key每次被修改,服务端都会发送广播
3. 细粒度的权限控制
ACL SETUSER normaluser on > abc 创建并启用一个用户 normaluser,把它的密码设置为“abc” ACL SETUSER normaluser +@hash -@string 设置用户 normaluser 只能调用 Hash 类型的命令操作 ACL SETUSER normaluser ~user:* +@all 设置用户 normaluser 只能对以“user:”为前缀的 key 进行命令操作
4.启用RESP3协议
标签:key,版本,redis,线程,io,6.0,normaluser,服务端,客户端 来源: https://www.cnblogs.com/isnotnull/p/14657468.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。