成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Redis內(nèi)存告警處理

IT那活兒 / 3466人閱讀
Redis內(nèi)存告警處理

點(diǎn)擊上方“IT那活兒”公眾號(hào),關(guān)注后了解更多內(nèi)容,不管IT什么活兒,干就完了??! 

1

關(guān)于Redis的bigkey,阿里Redis開(kāi)發(fā)規(guī)范中有說(shuō)明:拒絕bigkey,防止網(wǎng)卡流量、慢查詢,string類型控制在10KB之內(nèi),hash、list、set、zset元素個(gè)數(shù)不要超過(guò)5000。
今天我們來(lái)看一個(gè)反例,一個(gè)異常情況下包含千萬(wàn)數(shù)量級(jí)個(gè)元素的list。

2

某時(shí)某分某值班人員收到告警傳報(bào),指向某業(yè)務(wù)redis實(shí)例內(nèi)存使用量告警。
登錄智慧運(yùn)維管理平臺(tái),查看該redis實(shí)例使用內(nèi)存情況,使用內(nèi)存9.95GB超過(guò)閾值。
查看該redis實(shí)例使用內(nèi)存基線數(shù)據(jù),正常范圍在0.67—2.77GB之間,遠(yuǎn)低于當(dāng)前內(nèi)存使用量9.95GB。
登錄redis主機(jī),檢查bigkey返回結(jié)果,命令如下:
redis-cli -h  -p  --bigkeys
主要檢查summary部分的信息,發(fā)現(xiàn)該實(shí)例一共有3864814個(gè)key,其中l(wèi)ist類型有1個(gè)key,該key有23322701個(gè)元素。
反饋開(kāi)發(fā)商確認(rèn)該list為重復(fù)投遞產(chǎn)生的垃圾數(shù)據(jù),申請(qǐng)授權(quán)臨時(shí)UNLINK刪除處理后恢復(fù)正常,目前已更新應(yīng)用程序版本,控制該list元素?cái)?shù)量避免bigkey以徹底解決。

3

到這里展示了一個(gè)bigkey從發(fā)現(xiàn)到處理的案例,接下來(lái)我們來(lái)看看bigkey到底能給redis帶來(lái)什么危害。
bigkey顧名思義就是value占用內(nèi)存空間大或者元素多的key。
3.1 在Redis中存在兩種類型,字符串類型最大512MB,非字符串類型(例如bash、list、set、zset等)可以存儲(chǔ)大約40億(2^32-1)個(gè)元素,但實(shí)際上如果滿足下面任一情況都可以認(rèn)為是bigkey:
  • 字符串類型,一般認(rèn)為單個(gè)key的value值長(zhǎng)度超過(guò)10KB就是bigkey;

  • 非字符串/集合類型,單個(gè)key的元素個(gè)數(shù)超過(guò)5000就是bigkey;

上述的定義并不絕對(duì),主要是根據(jù)自己的業(yè)務(wù)場(chǎng)景調(diào)整具體的標(biāo)準(zhǔn)。
3.2 bigkey在redis中存在諸多隱患,有如下幾點(diǎn):
  • 超時(shí)阻塞:因?yàn)镽edis單線程執(zhí)行命令的特性,操作bigkey等耗時(shí)的操作,都可能阻塞Redis其他業(yè)務(wù)操作,造成慢查詢等性能問(wèn)題;

  • 網(wǎng)絡(luò)擁塞:讀取bigkey意味著需要消耗更多的網(wǎng)絡(luò)流量占用更多的網(wǎng)絡(luò)帶寬,可能造成網(wǎng)絡(luò)擁塞,自身變慢的同時(shí)影響到其他業(yè)務(wù)性能;

  • 過(guò)期刪除:bigkey相關(guān)的刪除或自動(dòng)過(guò)期時(shí)在低版本中容易產(chǎn)生阻塞,主庫(kù)較長(zhǎng)時(shí)間的阻塞可能引發(fā)主備同步中斷或主備切換;

  • 遷移困難:bigkey遷移可能會(huì)失敗而且容易阻塞redis;

  • 內(nèi)存空間不均勻:集群架構(gòu)下某個(gè)數(shù)據(jù)分片的內(nèi)存使用率遠(yuǎn)超其它數(shù)據(jù)分片,無(wú)法使數(shù)據(jù)分片的內(nèi)存資源達(dá)到均衡,不利于集群對(duì)內(nèi)存空間的統(tǒng)一管理;

  • 內(nèi)存空間資源緊張redis內(nèi)存不斷變大引發(fā)OOM,或達(dá)到maxmemory設(shè)置值引發(fā)寫阻塞或核心key被驅(qū)逐。

3.3 如何發(fā)現(xiàn)redis中的bigkey,有以下幾種方法:
  • redis-cli自帶的命令,redis-cli -h -p --bigkeys,該命令以遍歷的方式分析redis實(shí)例中的所有key,并返回整體統(tǒng)計(jì)信息和每鐘數(shù)據(jù)類型中最大的key,并不能找出整個(gè)redis中所有的大key;

  • 通過(guò)redis-rdb-tools工具包中的rdb工具分析redis的dump.rdb文件生成csv文件再導(dǎo)入到mysql、Oracle等數(shù)據(jù)庫(kù)中進(jìn)行統(tǒng)計(jì)分析,該工具是離線分析rdb持久化文件對(duì)性能無(wú)影響;

  • 某些公有云的可視化頁(yè)面分析工具,如阿里云redis大key搜索工具等。

因此不管對(duì)于redis的開(kāi)發(fā)還是運(yùn)維人員,bigkey就是一個(gè)不穩(wěn)定因素,時(shí)不時(shí)帶來(lái)穩(wěn)定性風(fēng)險(xiǎn),使用redis過(guò)程中都應(yīng)該經(jīng)常關(guān)注數(shù)據(jù)中是否有bigkey,及早發(fā)現(xiàn)并處理,避免對(duì)業(yè)務(wù)系統(tǒng)的進(jìn)一步危害。

END



本文作者:崔京夢(mèng)

本文來(lái)源:IT那活兒(上海新炬王翦團(tuán)隊(duì))

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/129481.html

相關(guān)文章

  • 內(nèi)存 監(jiān)控告警 UMem Redis

    摘要:監(jiān)控告警控制臺(tái)監(jiān)控告警管理云內(nèi)存為用戶提供多種類型的監(jiān)控,包括如使用量連接數(shù)數(shù)量等多種監(jiān)控,并可設(shè)置監(jiān)控告警。云內(nèi)存提供默認(rèn)告警模板的同時(shí),資源監(jiān)控模板界面支持用戶創(chuàng)建告警模板并自定義設(shè)置告警監(jiān)控項(xiàng)。監(jiān)控告警控制臺(tái)監(jiān)控告警管理云內(nèi)存Redis為用戶提供多種類型的監(jiān)控,包括如使用量、連接數(shù)、QPS、 Key數(shù)量等多種監(jiān)控,并可設(shè)置監(jiān)控告警。云內(nèi)存Redis提供默認(rèn)告警模板的同時(shí),資源監(jiān)控模板界...

    ernest.wang 評(píng)論0 收藏2041
  • 實(shí)例管理 云內(nèi)存 UMem Redis

    摘要:實(shí)例管理實(shí)例管理實(shí)例管理新建實(shí)例完成后,可以在控制臺(tái)上管理實(shí)例,如擴(kuò)容續(xù)費(fèi)及監(jiān)控告警等實(shí)例管理操作。對(duì)于縮容,整個(gè)過(guò)程中對(duì)無(wú)任何影響。運(yùn)維時(shí)間運(yùn)維時(shí)間主備產(chǎn)品提供運(yùn)維時(shí)間窗口設(shè)置,用戶可以根據(jù)自身業(yè)務(wù)選擇時(shí)間段來(lái)做重寫。 實(shí)例管理新建實(shí)例完成后,可以在控制臺(tái)上管理Redis實(shí)例,如:擴(kuò)容、續(xù)費(fèi)及監(jiān)控告警等實(shí)例管理操作。主備版Redis控制臺(tái)支持創(chuàng)建從庫(kù)、配置升降級(jí)、設(shè)置密碼、重啟、慢查詢分析...

    ernest.wang 評(píng)論0 收藏723
  • AIOps在攜程的踐行

    摘要:隨著人工智能時(shí)代的到來(lái),攜程生產(chǎn)環(huán)境運(yùn)維進(jìn)入了新的運(yùn)維時(shí)代。本文選取了幾種典型的運(yùn)維場(chǎng)景對(duì)在攜程的踐行展開(kāi)了介紹,首先讓我們從概念認(rèn)識(shí)下。針對(duì)應(yīng)用異常指標(biāo)檢測(cè)這種場(chǎng)景,抽取一定的樣本統(tǒng)計(jì),在基于專家經(jīng)驗(yàn)標(biāo)注下的準(zhǔn)確率可達(dá)到以上,召回率接近。 作者簡(jiǎn)介徐新龍,攜程技術(shù)保障中心應(yīng)用管理團(tuán)隊(duì)高級(jí)工程師,負(fù)責(zé)多個(gè)AIOps項(xiàng)目的設(shè)計(jì)與研發(fā)。信號(hào)處理專業(yè)碩士畢業(yè),對(duì)人工智能、機(jī)器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)及數(shù)學(xué)有...

    MingjunYang 評(píng)論0 收藏0
  • 『九個(gè)月實(shí)現(xiàn)破億用戶的可擴(kuò)展架構(gòu)』學(xué)習(xí)筆記

    摘要:五技術(shù)棧整個(gè)看下來(lái)會(huì)發(fā)現(xiàn)美拍的架構(gòu)做的非常的穩(wěn),小軍也有提到,在項(xiàng)目初期高速發(fā)展階段做架構(gòu)時(shí)要克服對(duì)完美架構(gòu)的欲望克服對(duì)新技術(shù)的欲望,先讓系統(tǒng)跑起來(lái)。 昨晚把美拍架構(gòu)負(fù)責(zé)人洪小軍在Qcon上的『九個(gè)月實(shí)現(xiàn)破億用戶的可擴(kuò)展架構(gòu)』分享看了一遍(其實(shí)那場(chǎng)QCon我也在現(xiàn)場(chǎng),但是當(dāng)時(shí)小軍這個(gè)會(huì)場(chǎng)實(shí)在太多人了,而且當(dāng)時(shí)北京還沒(méi)開(kāi)空調(diào)又熱又悶,所以我就挑了個(gè)涼快的會(huì)場(chǎng)去聽(tīng)了哈哈),感覺(jué)有不少值得學(xué)...

    TesterHome 評(píng)論0 收藏0
  • vivo統(tǒng)一告警平臺(tái)設(shè)計(jì)與實(shí)踐

    摘要:告警當(dāng)一個(gè)問(wèn)題通過(guò)告警系統(tǒng)將消息以短信電話郵件等方式告知給用戶時(shí),我們稱之為一條告警。圖統(tǒng)一告警系統(tǒng)結(jié)構(gòu)圖告警收斂對(duì)于告警平臺(tái)每天會(huì)產(chǎn)生數(shù)以萬(wàn)計(jì)的告警,這些告警對(duì)于運(yùn)維或開(kāi)發(fā)人員都需要去分析甄別優(yōu)先級(jí)并處理故障。 一、背景一套監(jiān)控系統(tǒng)檢測(cè)和告警是密不可分的,檢測(cè)用來(lái)發(fā)現(xiàn)異常,告警用來(lái)將問(wèn)題信息發(fā)送給相應(yīng)的人。v...

    Rocko 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<