襄阳专业网站建设公司宁德市蕉城区建设局网站

张小明 2026/1/7 22:40:40
襄阳专业网站建设公司,宁德市蕉城区建设局网站,百度搜索热度排名,外贸营销推广的手段一、Redis Key-Value设计规范性能优化 1. key名设计规范 【建议】 以业务名(或数据库名)为前缀(防止key冲突)#xff0c;用冒号分隔#xff0c;比如业务名:表名:id login:user:10 优点#xff1a; 可读性强避免key冲突方便管理更节省内存#xff1a;key是string类…一、Redis Key-Value设计规范性能优化1. key名设计规范【建议】以业务名(或数据库名)为前缀(防止key冲突)用冒号分隔比如业务名:表名:id login:user:10优点可读性强避免key冲突方便管理更节省内存key是string类型底层编码包含int、embstr和raw三种。embstr在小于44字节使用采用连续内存空间内存占用更小(2)【建议】简洁性保证语义的前提下控制key的长度当key较多时内存占用也不容忽视例如(3)【强制】不要包含特殊字符反例包含空格、换行、单双引号以及其他转义字符(4)、拒绝BigKeyBigKey通常以Key的大小和Key中成员的数量来综合判定例如Key本身的数据量过大一个String类型的Key它的值为5 MB。Key中的成员数过多一个ZSET类型的Key它的成员数量为10,000个。Key中成员的数据量过大一个Hash类型的Key它的成员数量虽然只有1,000个但这些成员的Value值总大小为100 MB。2. Value设计规范(1)【强制】拒绝bigkey(防止网卡流量、慢查询)在Redis中一个字符串最大512MB一个二级数据结构例如hash、list、set、zset可以存储大约40亿个(2^32-1)个元素但实际中如果下面两种情况我就会认为它是bigkey。字符串类型它的big体现在单个value值很大一般认为超过10KB就是bigkey。非字符串类型哈希、列表、集合、有序集合它们的big体现在元素个数太多。一般来说string类型控制在10KB以内hash、list、set、zset元素个数不要超过5000。反例一个包含200万个元素的list。2、拒绝BigKeyBigKey通常以Key的大小和Key中成员的数量来综合判定例如Key本身的数据量过大一个String类型的Key它的值为5 MB。Key中的成员数过多一个ZSET类型的Key它的成员数量为10,000个。Key中成员的数据量过大一个Hash类型的Key它的成员数量虽然只有1,000个但这些成员的Value值总大小为100 MB。推荐单个key的value小于10KB对于集合类型的key建议元素数量小于10001、BigKey的危害网络阻塞 对BigKey执行读请求时少量的QPS就可能导致带宽使用率被占满导致Redis实例乃至所在物理机变慢数据倾斜 BigKey所在的Redis实例内存使用率远超其他实例无法使数据分片的内存资源达到均衡Redis阻塞 对元素较多的hash、list、zset等做运算会耗时较旧使主线程被阻塞CPU压力 对BigKey的数据序列化和反序列化会导致CPU的使用率飙升影响Redis实例和本机其它应用2、如何发现BigKeyredis-cli --bigkeys利用redis-cli提供的--bigkeys参数可以遍历分析所有key并返回Key的整体统计信息与每个数据的Top1的big keyscan扫描 自己编程利用scan扫描Redis中的所有key利用strlen、hlen等命令判断key的长度此处不建议使用MEMORY USAGE第三方工具 利用第三方工具如 Redis-Rdb-Tools 分析RDB快照文件全面分析内存使用情况网络监控 自定义工具监控进出Redis的网络数据超出预警值时主动告警3、如何删除BigKeyBigKey内存占用较多即便时删除这样的key也需要耗费很长时间导致Redis主线程阻塞引发一系列问题。redis 3.0 及以下版本如果是集合类型则遍历BigKey的元素先逐个删除子元素最后删除BigKeyRedis 4.0以后Redis在4.0后提供了异步删除的命令unlink3、恰当的数据类型数据存储到Redis当中如何选择恰当的类型呢举例说明一下例1比如存储一个User对象我们有三种存储方式方式一json字符串user:1{name: Jack, age: 21}优点实现简单粗暴缺点数据耦合不够灵活方式二字段打散user:1:nameJackuser:1:age21优点可以灵活访问对象任意字段缺点占用空间大、没办法做统一控制方式三hashuser:1nameJack其实第一列的单元格是合并的jack21优点底层使用ziplist空间占用小可以灵活访问对象的任意字段缺点代码相对复杂PS总的来说还是哈希比较好一点空间小且灵活代码其实也复杂不到哪去多那几行代码一下就完事了例2假如有hash类型的key其中有100万对field和valuefield是自增id这个key存在什么问题如何优化方案一hash存储如果还使用hash来存储的话会存在以下问题hash的entry数量超过500时会使用哈希表而不是ZipList内存占用较多。可以通过hash-max-ziplist-entries配置entry上限。但是如果entry过多就会导致BigKey问题方案二采用String类型存储拆分为StringKeyvalueid:0value0..........id:999999value999999存在的问题string结构底层没有太多内存优化内存占用较多。想要批量获取这些数据比较麻烦方案三拆分为小的hash将 id / 100 作为key 将id % 100 作为field这样每100个元素为一个Hash采用小的hash结构之后内存缩小了接近1/3。4、总结Key的最佳实践固定格式[业务名]:[数据名]:[id]足够简短不超过44字节不包含特殊字符Value的最佳实践合理的拆分数据拒绝BigKey选择合适数据结构Hash结构的entry数量不要超过1000设置合理的超时时间
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

SEO如何建设网站网站被泛解析

# DAY 37 早停策略和模型权重的保存知识点回顾:1. 过拟合的判断:测试集和训练集同步打印指标2. 模型的保存和加载 a. 仅保存权重 b. 保存权重和模型 c. 保存全部信息 checkpoint,还包含训练状态3. 早停策略 作业:对信贷数据集…

张小明 2026/1/5 18:14:43 网站建设

北流网站建设制作o2o是什么商业模式

在 Linux 系统中运行 Windows 程序及软件管理全攻略 在 Linux 系统下运行 Windows 程序时,你有商业和免费两种选择,商业选项更为丰富。下面为你详细介绍这些选择。 商业软件 如今,越来越多的商业工具能让你在 Linux 系统中运行从 Microsoft Office 到 Windows 游戏等各类…

张小明 2026/1/5 5:30:44 网站建设

61制作工厂网站wordpress注册上面的logo

反垃圾邮件措施全解析 1. 垃圾邮件问题概述 在计算机领域,垃圾邮件指的是那些无用的电子邮件,比如可疑的防脱发疗法广告、非法的金字塔骗局,以及用你不懂的语言编写的神秘信息等。对于电子邮件管理员来说,垃圾邮件是一个严重的问题,它主要涉及两个方面:一是防止系统被用…

张小明 2026/1/5 18:14:40 网站建设

做商城购物网站无锡专业制作网站

第一章:生物制药研发的困局与突破在现代医学快速发展的背景下,生物制药已成为治疗癌症、自身免疫疾病和罕见病的核心手段。然而,新药研发周期长、成本高、成功率低的问题长期制约行业发展。从靶点发现到临床试验,平均耗时超过10年…

张小明 2026/1/5 18:11:56 网站建设

做lol直播网站自设计网站

30亿参数企业级AI革命:IBM Granite-4.0混合架构轻量化部署指南 【免费下载链接】granite-4.0-h-micro-base-bnb-4bit 项目地址: https://ai.gitcode.com/hf_mirrors/unsloth/granite-4.0-h-micro-base-bnb-4bit 导语 IBM与Unsloth联合推出的Granite-4.0-H-…

张小明 2026/1/5 12:35:11 网站建设

辽宁住房和城乡建设厅网站首页Divi wordpress 下载

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

张小明 2026/1/5 20:08:48 网站建设