安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

Redis变慢?深入浅出Redis性能诊断系列文章(一)

9月13日 萌嘟嘟投稿
  (本文首发于数据库架构师公号,订阅数据库架构师公号,一起学习数据库技术)
  Redis作为一款业内使用率最高的内存数据库,其拥有非常高的性能,单节点的QPS压测能达到18万以上。但也正因此如此,当应用访问Redis时,如果发现响应延迟变大时就会给业务带来非常大的影响。
  比如在日常使用Redis时,肯定或多或少都遇到过下面这种问题:为什么Redis服务过去一直很稳定,突然从今天某个时间点开始变慢了?为什么访问Redis相同的命令,有时响应很快,有时却非常慢?为什么访问Redis突然卡住了,过一会又自动恢复了,这也导致业务请求出现很多的毛刺?
  如果不理解Redis的架构体系、核心功能的实现原理甚至一些命令的使用限制等,那么这种访问变慢问题的排查就会一头雾水,不知道从哪里下手才好。
  本文基于多年使用和运维管理Redis的经验,详细梳理了可能引起Redis性能问题的原因并剖析对应的解决方案,也希望这一系列的文章能帮助大家更加合理的使用Redis,快速的定位并解决问题。
  一、Redis访问架构链路分析
  首先,在深入分析Redis服务前,需要弄清楚是不是真的Redis访问变慢了。
  如果我们发现自己的应用服务响应延迟变长,我们首先要排查应用内部,确认是不是访问Redis路径变慢进而拖慢了整个服务的响应吞吐。
  这里有两个比较关键的自查:对于应用服务访问Redis的请求,记录下每次请求的响应延时(比如使用分布式链路跟踪系统等),看看是不是访问Redis响应时间变长了;排查应用服务的多个节点,看看是不是每个节点都有问题,还是仅仅一个出现了问题。
  这两个是后续深入分析Redis服务问题前的关键自查,事半功倍!
  对于第一点从应用到Redis这条链路变慢的原因可能有如下两个:应用到Redis服务之间的链路出现问题了,比如Redis所在服务器网络负载过高丢包、交换机问题、Proxy变慢等;Redis本身确实因为一些原因变慢了。
  一般服务器层面都会有相关监控,网络的问题很容易就会发现,比如网卡打满、网卡降频【万兆降为千兆】等。
  对于Redis访问链路的响应时间则可以做个模拟监控,如下Redis访问架构,应用程序经过域名系统、VIP系统,最后才到Redis所在的服务器,这种情况下则分别可以模拟请求域名、请求VIP、请求直连RedisServer三条路径来评估响应时间是否确实变长了。
  下面是另外一种Redis架构,访问路径又有不同,那么排查的方向也不会不同。
  二、Redis性能基准测评
  如果核查发现确实是请求Redis的服务响应耗时变长了,那么此刻就可以把问题分析的焦点放到Redis上了。
  下面我们重点分析下Redis性能问题。
  首先,需要对Redis进行基准的性能测试,了解我们的Redis服务在当前环境服务器上的基准性能。
  什么是基准性能?
  简单来讲,基准性能就是指在一台负载正常的服务器上,访问Redis的最大的响应延迟和平均响应延迟分别是怎样的?
  为什么要测试基准性能?参考官方提供的响应延迟测试,来判断自己的Redis服务是否变慢不行吗?
  答案是不行的。
  因为Redis在不同的软硬件环境下,它的性能表现差别特别大,不同主频型号的CPU、不同的SSD硬盘,都会极大影响Redis的性能表现。服务器配置比较低时延迟为10ms时,才认为Redis响应变慢了,但是如果配置比较高,那么可能延迟是1ms时就可以认为Redis变慢了。
  所以,只有了解我们的Redis在生产环境服务器上的基准性能,才能进一步评估,当其延迟达到什么程度时,才认为Redis确实变慢了。
  Redis自带的工具可以帮助我们完成这种测评,如下介绍两种基准性能测试的方式。
  方式一:rediscliintrinsiclatency
  为了避免业务测试服务器到Redis服务器之间的网络延迟,需要直接在Redis服务器上测试实例的响应延迟情况。执行以下命令,就可以测试出这个实例120秒内的最大响应延迟:
  shellredisclih127。0。0。1p6379intrinsiclatency120
  Maxlatencysofar:4microseconds。
  Maxlatencysofar:5microseconds。
  Maxlatencysofar:15microseconds。
  Maxlatencysofar:23microseconds。
  Maxlatencysofar:64microseconds。
  Maxlatencysofar:196microseconds。
  Maxlatencysofar:245microseconds。
  Maxlatencysofar:246microseconds。
  Maxlatencysofar:254microseconds。
  Maxlatencysofar:259microseconds。
  29298480totalruns(avglatency:4。0958microseconds40957。76nanosecondsperrun)。
  Worstruntook63xlongerthantheaveragelatency。
  从输出结果可以看到,这120秒内的最大响应延迟为259微秒(0。259毫秒)。
  方式二:redisbenchmark
  Redisbenchmark是Redis官方自带的Redis性能测试工具,可以有效的测试Redis服务的性能。
  shellredisbenchmarkh127。0。0。1p6379tset,getc500n100000
  SET
  100000requestscompletedin1。02seconds
  500parallelclients
  3bytespayload
  keepalive:1
  0。001milliseconds
  0。052milliseconds
  99。093milliseconds
  99。884milliseconds
  100。004milliseconds
  97847。36requestspersecond
  GET
  100000requestscompletedin1。02seconds
  500parallelclients
  3bytespayload
  keepalive:1
  0。001milliseconds
  0。052milliseconds
  99。293milliseconds
  99。924milliseconds
  100。004milliseconds
  97656。24requestspersecond
  该命令对set和get命令的操作响应时间进行测评,并发500个执行10w次操作,从输出结果可以看到,set的QPS达到了97847,响应时间都在4ms以内;get的QPS达到了97656,最大响应时间也在4ms以内;
  了解了基准性能测试方法,那么我们就可以按照以下几步,来判断Redis是否真的变慢了:在相同配置的服务器上,测试一个正常Redis实例的基准性能找到可能变慢的Redis实例,测试这个实例的基准性能对比这个实例的运行延迟与正常Redis基准性能,如果性能差距在两倍以上,就可以认为这个Redis服务确实响应变慢了
  如果确认是Redis服务变慢了,那如何排查是哪里发生了问题呢?后面的系列文章将从多个维度来一步步详细分析,欢迎关注。
  如果这篇文章对你有帮助,还请帮忙点赞、转发一下,你的支持会激励我输出更多高质量的文章,非常感谢!
  如果你还想看更多优质文章,欢迎关注我的公号数据库架构师,提升数据库技能。
投诉 评论

Openlayers地名搜索坐标搜索行政区划等服务OpenLayers教程天地图作为广大GISer使用频繁的服务之一,除了应用众多的底图服务(影像、地形、矢量),还有很多Web服务接口。比如:地名搜索、地理编码查询……8位反差最大的明星,渣男一脸老实相,玉女秒变女海王不知是从何时开始,很多明星在刚出道时,都会选择立一个人设。立人设这件事当然很好理解,毕竟一方面可以巩固人气和热度,另一方面也可以加深外界对明星本人的印象。但话说回来……核力自旋与基本粒子原子核含有中子和质子,质子由两个上夸克和一个下夸克组成,而中子由两个下夸克和一个上夸克组成。这两种类型的夸克有两个电荷值:上夸克的电荷为23,下夸克的电荷为13。因此,如果我们……寻亲!来参加北京冬奥会的Kai是六安人日前,网上一则特殊的寻亲信息十分感人,一位即将参加北京冬奥会的美国国家队女运动员发推特说,她出生于安徽六安市,刚出生被遗弃,后被一对好心的美国夫妇收养,现在她终于回到祖国,非常……Redis变慢?深入浅出Redis性能诊断系列文章(一)(本文首发于数据库架构师公号,订阅数据库架构师公号,一起学习数据库技术)Redis作为一款业内使用率最高的内存数据库,其拥有非常高的性能,单节点的QPS压测能达到18万以……这不换安卓?苹果再爆严重安全漏洞黑客可完全接管用户设备8月21日,据央视新闻报道,美国苹果公司发布了两份安全报告,其中提到公司旗下的智能手机、平板电脑等多款设备存在严重的安全漏洞,该漏洞可使黑客完全接管这些设备。(图片来自:……ColorOS13又出内测版本!面向FindX5用户,升级后近日,OPPO官方再次启动Android13xColorOS升级内测nolog版本内测招募活动,面向OPPOFindX5和一加10Pro用户,每部机型招募1500人。持有这两部……曼联转会市场迎来顶级中场据英国曼彻斯特曼晚报:弗朗基德容跟曼联的转会谈判拉锯了一个夏天,夏季转会窗口还有不到二十天关闭了,由于曼联新赛季没有欧冠可踢,德容本人并不愿意在本赛季离开巴萨罗那加盟曼联,球员……秀美山河,G315国道说起公路,可能没有多少人觉得它也是一处风景,因为它的随处可见,平平无奇,很容易让人忽略他的美。你可知道,在中国,也有一条66号公路。它不是自驾圣地318,也不是具有超高人……微信右上角的号,还隐藏着4个你不知道的功能,不会用可惜了原来微信右上角的号这么强大!还隐藏着4个你不知道的功能,非常实用,不会用太浪费了!大家好,我是秦韵莞香,用微信这么久了,估计很多人都没有发现,原来微信右上角的号功能这么强……保罗近2场27中21命中率77创季后赛史上后卫连续2场最高命直播吧5月3日讯季后赛第二轮G1,太阳战胜独行侠。此役,保罗全场比赛出战28分45秒,13投7中,三分球5中2,3罚全中拿下了19分5板3助1断1帽的数据。数据显示……劳塔罗闪击,国际米兰一球小胜维罗纳文羊城晚报全媒体记者刘毅世界杯上的阿根廷前锋劳塔罗和国际米兰的劳塔罗,仿佛是两个人。北京时间1月15日凌晨在意甲第18轮比赛中,劳塔罗闪击进球,帮助国米在主场以1比0小胜……
这将是2022世界杯最精彩的一场比赛证监会接连出手A股刮起监管风暴从来没有哪一个饭店,有这样绝处求生的风水胡晓明厦门楼市的神话结束了,厦门房价四连跌,厦门楼市分析第59期一个女生纯徒步旅行西藏,全程靠步行您永远不走捷径,您永远老实本分幸运而又倒霉的甘婷婷他演了潘金莲,余生都在里面度过退款冲上热搜!网友今年双11发货速度能擦出火星家电福利已登场,双十一实体店不做看客老慢支患者一旦咳嗽,是否应该马上服用镇咳药说到德训鞋?可不只有马吉拉每周冷门球鞋大赏为中国市场狠砸700亿!通用立下军令状2025超越特斯拉就业三方协议解约函规定是什么?汉江秋景工时规划与薪酬管理治疗腰椎病的三个中药偏方夏天晒后可以直接用美白面膜吗晒后修复护肤原来很重要哈登或被交易雄鹿,纳什位置或被斯奈德取代,皮蓬或和拉尔萨复合3岁宝宝反复发烧一般有哪几种情况题暇亭最佳男友标准做到3条以上就是好男友郑爽被曝1。6亿片酬,多位演员片酬也曝光,难怪冯远征建议评职鲁漕惠鹿鹤花果向晓风顺挂帆

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利