伍佰目录 短网址
  当前位置:海洋目录网 » 站长资讯 » 站长资讯 » 文章详细 订阅RssFeed

如何做到阿里云 Redis 开发规范中的拒绝 bigkey

来源:本站原创 浏览:81次 时间:2022-05-30

第一时间获取技术干货和业界资讯!

☞ 免费CSDN资料帮下服务 | 免费加群 ☜

代码中的问题,光靠 Code Review 是不够的。Code Review 主要是解决规范问题,当然也能排查出一些 bug。

Code Review 适合技术驱动型团队、公共服务型团队、测试缺失型团队、新人密集型团队、任何有主观意愿的团队。Code Review 活动主要围绕下面 4 项工作开展。

说到代码规范,我们就不得不提阿里云的 Redis 开发规范。这个规范写的很好,想把我说的都总结了。需要这套规范的可以私信我,我发给你们。

其中有一条写到:

意思我们都懂,关键是这个 bigkey 不好掌握,使用着使用着 key 可能就变大了,不规范了。

那么有没有大 Key 检测机制呢?答案当然有。阿里云提供了一个大 Key 搜索工具:https://yq.aliyun.com/articles/117042。原理其实就是和我们下面要将的内容类似。

因为有时候,我们的 BUG 就是无意直接产生的,bigkey 也有可能是你知识欠缺,缺乏考虑等原因造成的。因此,对于生产中的一些问题,我们还需要做到主动出击,主动去观察每个服务的健康状况。下面我们就一起来看看如果提前发现 Redis 中使用不合理的大 Key。

redis-cli -h{ip} -p{port} bigkeys 命令就是干这个事情的。该命令会对 redis 中的 key 进行采样,寻找较大的 keys。是用的是 scan 方式,不用担心会阻塞 redis 很长时间不能处理其他的请求。执行的结果可以用于分析 redis 的内存的只用状态,每种类型 key 的平均大小。

例如当我执行:redis-cli -h 127.0.0.1 -p 7001 –bigkeys 后,会出现如下内容:

String 就是字符串、Hash 就是哈希、List 就是列表、Set 就是集合、zset(sorted set:有序集合)。

字符串类型:一般认为超过 10k 的就是 bigkey,但是这个值和具体的 OPS 相关。

非字符串类型:体现在哈希,列表,集合类型元素过多。

bigkey 通常会导致内存空间不平衡,超时阻塞,如果 key 较大,redis 又是单线程,操作 bigkey 比较耗时,那么阻塞 redis 的可能性增大。每次获取 bigKey 的网络流量较大,假设一个 bigkey 为 1MB,每秒访问量为 1000,那么每秒产生 1000MB 的流量,对于普通千兆网卡,按照字节算 128M/S 的服务器来说可能扛不住。而且一般服务器采用单机多实例方式来部署,所以还可能对其他实例造成影响。

当你以为你会用 Redis 了,就可以找高薪工作了,但实际上会优化才重要!

  推荐站点

  • At-lib分类目录At-lib分类目录

    At-lib网站分类目录汇集全国所有高质量网站,是中国权威的中文网站分类目录,给站长提供免费网址目录提交收录和推荐最新最全的优秀网站大全是名站导航之家

    www.at-lib.cn
  • 中国链接目录中国链接目录

    中国链接目录简称链接目录,是收录优秀网站和淘宝网店的网站分类目录,为您提供优质的网址导航服务,也是网店进行收录推广,站长免费推广网站、加快百度收录、增加友情链接和网站外链的平台。

    www.cnlink.org
  • 35目录网35目录网

    35目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向35目录推荐、提交优秀网站。

    www.35mulu.com
  • 就要爱网站目录就要爱网站目录

    就要爱网站目录,按主题和类别列出网站。所有提交的网站都经过人工审查,确保质量和无垃圾邮件的结果。

    www.912219.com
  • 伍佰目录伍佰目录

    伍佰网站目录免费收录各类优秀网站,全力打造互动式网站目录,提供网站分类目录检索,关键字搜索功能。欢迎您向伍佰目录推荐、提交优秀网站。

    www.wbwb.net