日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 架構(gòu)師社區(qū)
[導(dǎo)讀]? ? 7月2號(hào)10點(diǎn)后,剛好某個(gè)負(fù)責(zé)的服務(wù)發(fā)生大量的redis連接超時(shí)的異常(redis.clients.jedis.exceptions.JedisConnectionException),由于本身的數(shù)據(jù)庫(kù)查詢緩存在redis中2分鐘,并且未做降級(jí)措施,而且本身不能做限流處理,而且隨著午高峰的時(shí)間流量在飆升,并

7月2號(hào)10點(diǎn)后,剛好某個(gè)負(fù)責(zé)的服務(wù)發(fā)生大量的redis連接超時(shí)的異常(redis.clients.jedis.exceptions.JedisConnectionException),由于本身的數(shù)據(jù)庫(kù)查詢緩存在redis中2分鐘,并且未做降級(jí)措施,而且本身不能做限流處理,而且隨著午高峰的時(shí)間流量在飆升,并且從10點(diǎn)開(kāi)始的2000的QPS,在11點(diǎn)達(dá)到高峰的13000QPS。


好在只是redis超時(shí)導(dǎo)致的某個(gè)查詢的失效,并不會(huì)導(dǎo)致整個(gè)主鏈路的流程不可用,所以接下來(lái)是怎么快速發(fā)現(xiàn)和解決問(wèn)題。


1、首先和負(fù)責(zé)redis同學(xué)排查,先排除redis本身的問(wèn)題

2、服務(wù)自查


異常分布

如果監(jiān)控可以看到單機(jī)維度的話,切換到單機(jī)維度查看異常是否均勻分布,如果分布不均勻,只是少量的host特別高,基本可以定位到出現(xiàn)問(wèn)題的機(jī)器


Redis負(fù)載

查看redis集群是否有節(jié)點(diǎn)負(fù)載過(guò)高,比如以常規(guī)經(jīng)驗(yàn)看來(lái)的80%。

    • 如果有一個(gè)或少量節(jié)點(diǎn)超過(guò),則說(shuō)明存在「熱key」問(wèn)題。

    • 如果大部分節(jié)點(diǎn)都超過(guò),則說(shuō)明存在「redis整體壓力大」問(wèn)題。


慢請(qǐng)求

查看監(jiān)控,如果有慢請(qǐng)求的時(shí)間和發(fā)生問(wèn)題的時(shí)間匹配,則可能存在「大key」問(wèn)題


客戶端原因

常見(jiàn)的幾個(gè)問(wèn)題原因有:

  • CPU

  • 進(jìn)程GC

  • 網(wǎng)絡(luò)

  • 容器宿主機(jī)

CPU

觀察機(jī)器或容器的CPU:

    • CPU (100%)是否接近或超過(guò)80%

    • CPU限流是否存在密集的限流 或者長(zhǎng)時(shí)間的限流

如果存在這些現(xiàn)象,應(yīng)該是計(jì)算資源不足的問(wèn)題

進(jìn)程GC

頻繁的GC或者GC耗時(shí)過(guò)長(zhǎng)會(huì)讓線程無(wú)法及時(shí)被調(diào)度到讀取redis響應(yīng)。

通常是用每分鐘GC總時(shí)長(zhǎng)/60s/每分鐘GC個(gè)數(shù),如果達(dá)到ms級(jí)了,對(duì)redis讀寫(xiě)延遲的影響就會(huì)很明顯。

然后也要對(duì)比和之前正常時(shí)是否存在明顯上升。

網(wǎng)絡(luò)

度量網(wǎng)絡(luò)質(zhì)量一般可以看TCP重傳率的監(jiān)控,這個(gè)比率越低越好。如果TCP重傳率保持在0.02%(以自己的實(shí)際情況為準(zhǔn))以上,或者突增,可以定位到是否是網(wǎng)絡(luò)問(wèn)題」。


我的問(wèn)題定位到這里其實(shí)已經(jīng)發(fā)現(xiàn)了,容器的TCP重傳率非常高,有些甚至達(dá)到了0.6%,咨詢?nèi)萜鞯耐陆ㄗh重啟容器,重啟之后立刻解決問(wèn)題。


繼續(xù)說(shuō)排查思路。

容器宿主機(jī)

通過(guò)監(jiān)控查看容器宿主機(jī)的CPU情況,有一些可能機(jī)器是虛擬機(jī)的情況,CPU的監(jiān)控指標(biāo)可能不準(zhǔn)確,特別是對(duì)于io密集型的情況會(huì)有較大差異??梢酝ㄓ肙PS提供的其他手段來(lái)查詢。


由于保密性的問(wèn)題,問(wèn)題的截圖是不能放的,但是這個(gè)事情其實(shí)也是敲響一個(gè)警鐘,熔斷限流降級(jí)措施在關(guān)鍵性的鏈路一定要保證有,重要的事情說(shuō)3遍,要有X3!


而且原來(lái)的歷史代碼本身也有一點(diǎn)小問(wèn)題,這些緩存的數(shù)據(jù)其實(shí)大半年都不會(huì)變分擔(dān)分的,完全不需要redis緩存,內(nèi)存級(jí)別的緩存就足夠了,或者說(shuō)內(nèi)存緩存+redis做級(jí)緩存也是一個(gè)比較合理的方案。平時(shí)開(kāi)發(fā)中要充分考慮數(shù)據(jù)的時(shí)效性來(lái)做對(duì)應(yīng)的設(shè)計(jì)。



免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。文章僅代表作者個(gè)人觀點(diǎn),不代表本平臺(tái)立場(chǎng),如有問(wèn)題,請(qǐng)聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

前言說(shuō)到redis,可能大家的腦海中蹦出的關(guān)鍵詞是:NoSQL、KV、高性能、緩存等。但今天的文章從另一個(gè)角度——微服務(wù)來(lái)展開(kāi)。這篇文章的起因也是源自一次面試經(jīng)歷,在面試一位來(lái)自陌陌的候選人(就是那個(gè)交友的陌陌)時(shí),他提...

關(guān)鍵字: redis

面試官:你們系統(tǒng)是怎么實(shí)現(xiàn)分布式鎖的?我:我們使用了redis的分布式鎖。具體做法是后端接收到請(qǐng)求后加入一個(gè)分布式鎖,如果加鎖成功,就執(zhí)行業(yè)務(wù),如果加鎖失敗就等待鎖或者拒絕請(qǐng)求。業(yè)務(wù)執(zhí)行完成后釋放鎖。面試官:能說(shuō)一下具體...

關(guān)鍵字: 分布式 redis

進(jìn)程請(qǐng)求分布式鎖時(shí)一般包含三個(gè)階段:1.進(jìn)程請(qǐng)求獲取鎖;2.獲取到鎖的進(jìn)程持有鎖并執(zhí)行業(yè)務(wù)邏輯;3.獲取到鎖的進(jìn)程釋放鎖;下文會(huì)按照這個(gè)三個(gè)階段進(jìn)行分析。單機(jī)Redis獲取鎖從一開(kāi)始的請(qǐng)求進(jìn)程通過(guò)SETNX命令獲取鎖;1...

關(guān)鍵字: redis zookeeper 分布式鎖

經(jīng)過(guò)前面兩篇文章《JSON Web Token - 在Web應(yīng)用間安全地傳遞信息》《八幅漫畫(huà)理解使用JSON Web Token設(shè)計(jì)單點(diǎn)登錄系統(tǒng)》的科普,相信大家應(yīng)該已經(jīng)知道了 JWT 協(xié)議是什么了。

關(guān)鍵字: JWT redis session

我是Redis,一個(gè)叫Antirez的男人把我?guī)У搅诉@個(gè)世界上。 那天,Redis基友群里,許久未見(jiàn)的大白發(fā)來(lái)了一條消息……于是,大白拉了一個(gè)新的群 以后的日子中,咱們哥仨相互配合,日常工作中最多的就是數(shù)據(jù)同步了……

關(guān)鍵字: redis 嵌入式

作為一名服務(wù)端工程師,工作中你肯定和Redis打過(guò)交道。Redis為什么快,這點(diǎn)想必你也知道,至少為了面試也做過(guò)準(zhǔn)備。很多人知道Redis快僅僅因?yàn)樗腔趦?nèi)存實(shí)現(xiàn)的,對(duì)于其它原因倒是模棱兩可。那么,今天就和小萊一起看看...

關(guān)鍵字: redis 嵌入式

作為一名后端工程師,工作中你肯定和 Redis 打過(guò)交道。Redis 為什么快,這點(diǎn)想必你也知道,至少為了面試也做過(guò)準(zhǔn)備。很多人知道 Redis 快僅僅因?yàn)樗腔趦?nèi)存實(shí)現(xiàn)的,對(duì)于其它原因倒是模棱兩可。

關(guān)鍵字: redis 嵌入式

內(nèi)存數(shù)據(jù)庫(kù)Redis的相關(guān)知識(shí),幾乎是大廠的必考題,本文總結(jié)了設(shè)計(jì)Redis的11道面試題。

關(guān)鍵字: redis 嵌入式

最近,又重新學(xué)習(xí)了下Redis,深深被Redis的魅力所折服,Redis不僅能快還能慢,簡(jiǎn)直利器呀!

關(guān)鍵字: redis 嵌入式
關(guān)閉