亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

微信監(jiān)控技術(shù) 怎么監(jiān)控微信


微信監(jiān)控技術(shù) 怎么監(jiān)控微信

文章插圖
微信監(jiān)控技術(shù)(怎么監(jiān)控微信)本文分享的是微信運(yùn)維監(jiān)控系統(tǒng)的具體設(shè)計(jì)實(shí)踐 。在分享開始之前先看如下圖中微信后臺(tái)系統(tǒng)的現(xiàn)狀,面對龐大的調(diào)用量及復(fù)雜的調(diào)用鏈路,單靠人力難以維護(hù),只能依賴一個(gè)全方位監(jiān)控、穩(wěn)定、快速的運(yùn)維監(jiān)控系統(tǒng) 。
我們的運(yùn)維監(jiān)控系統(tǒng)主要有三個(gè)功能:
  • 第一個(gè)是故障報(bào)警;
  • 第二個(gè)是故障分析和定位;
  • 第三個(gè)是自動(dòng)化策略 。
今天我們的分享主題,主要有以下三部分:
第一個(gè)就是監(jiān)控?cái)?shù)據(jù)收集輕量化;
第二個(gè)是微信數(shù)據(jù)監(jiān)控的發(fā)展過程;
第三個(gè)海量監(jiān)控分析下的數(shù)據(jù)存儲(chǔ)設(shè)計(jì)思路 。
一、監(jiān)控?cái)?shù)據(jù)收集輕量化 先看一下常見數(shù)據(jù)收集流程,一般常見的采集流程來說從日志里面采集,然后本地匯總打包,再發(fā)到全局服務(wù)器里面匯總 。
但是對于微信來說,200w/min調(diào)用量產(chǎn)生的是2000億/min的監(jiān)控?cái)?shù)據(jù)上報(bào),這個(gè)可能還是比較保守的估計(jì) 。
早期我們使用過自定義文本類型日志上報(bào),但由于業(yè)務(wù)及后臺(tái)服務(wù)非常多,日志格式增長非常快,難以持續(xù)進(jìn)行維護(hù),而且不管是CPU、網(wǎng)絡(luò)、存儲(chǔ)、統(tǒng)計(jì)都出現(xiàn)非常大的壓力,難以保證監(jiān)控系統(tǒng)本身的穩(wěn)定 。
為了實(shí)現(xiàn)穩(wěn)定的分鐘級(jí)、甚至秒級(jí)的數(shù)據(jù)監(jiān)控,我們進(jìn)行了一系列改造 。
對于我們內(nèi)部監(jiān)控?cái)?shù)據(jù)處理分為兩個(gè)步驟:
  • 第一個(gè)是數(shù)據(jù)分類
  • 第二個(gè)是定制處理策略
我們對數(shù)據(jù)進(jìn)行分類,在我們內(nèi)部來說有三種數(shù)據(jù):
第一是實(shí)時(shí)故障監(jiān)控分析;
第二種是非實(shí)時(shí)數(shù)據(jù)統(tǒng)計(jì),比如說業(yè)務(wù)報(bào)表等;
第三種是單用戶異常分析,比如說用戶一個(gè)報(bào)障過來還要單獨(dú)對用戶故障進(jìn)行分析 。
下面先簡單介紹一下非實(shí)時(shí)數(shù)據(jù)統(tǒng)計(jì)及單用戶異常分析,再重點(diǎn)介紹實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)的處理 。
1.1、非實(shí)時(shí)數(shù)據(jù) 對于非實(shí)時(shí)數(shù)據(jù)來說,我們有一個(gè)配置管理頁面 。
用戶在上報(bào)的時(shí)候會(huì)先申請 logid + 自定義數(shù)據(jù)字段,上報(bào)并非使用寫日志文件的方式,而是采用共享內(nèi)存隊(duì)列、批量打包發(fā)送的方式減少磁盤IO、日志服務(wù)器的調(diào)用壓力 。統(tǒng)計(jì)使用分布式統(tǒng)計(jì),目前已經(jīng)是常規(guī)做法 。
1.2、單用戶異常分析 對于單個(gè)用戶異常分析來說,我們關(guān)注的是異常,所以上報(bào)路徑跟剛才非實(shí)時(shí)的路徑比較相近 。
采用固定的格式: logid + 固定數(shù)據(jù)字段(服務(wù)器IP+返回碼等),數(shù)據(jù)上報(bào)量比剛才的非實(shí)時(shí)日志還要大很多,所以我們是抽樣上報(bào)的,除了把數(shù)據(jù)存入到Tdw分布式存儲(chǔ)里面,還會(huì)把它轉(zhuǎn)發(fā)到另外一個(gè)緩存里面進(jìn)行一個(gè)查詢緩存 。
1.3、實(shí)時(shí)監(jiān)控?cái)?shù)據(jù) 實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)是重點(diǎn)分享的部分,這部分?jǐn)?shù)據(jù)也是2000億/min日志上報(bào)中的絕大多數(shù) 。
為了實(shí)現(xiàn)分方位的監(jiān)控,我們的實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)也有很多種類型,其格式、來源、統(tǒng)計(jì)方式都有差異,為了實(shí)現(xiàn)快速穩(wěn)定的數(shù)據(jù)監(jiān)控,我們對數(shù)據(jù)進(jìn)行了分類,然后針對性的對各類數(shù)據(jù)進(jìn)行簡化、統(tǒng)一數(shù)據(jù)格式,再對簡化后的數(shù)據(jù)采取最優(yōu)的數(shù)據(jù)處理策略 。
對我們數(shù)據(jù)來說,我們覺得有下面幾種:
  • 后臺(tái)數(shù)據(jù)監(jiān)控,用于微信后臺(tái)服務(wù)的監(jiān)控?cái)?shù)據(jù);
  • 終端數(shù)據(jù)監(jiān)控,除了后臺(tái),我們還需要關(guān)注終端方面具體的性能、異常監(jiān)控及網(wǎng)絡(luò)異常;
  • 對外監(jiān)控服務(wù),我們現(xiàn)在有商戶和小程序等外部開發(fā)者提供的服務(wù),我們及外部服務(wù)開發(fā)者都需要知道這個(gè)服務(wù)和我們微信之間有些怎么樣的異常,所以我們還提供了對外的監(jiān)控服務(wù) 。
1.3.1、后臺(tái)數(shù)據(jù)監(jiān)控 對于我們后臺(tái)數(shù)據(jù)監(jiān)控來說,我們覺得按層次來說分成四類,每種有不同的格式和上報(bào)方式:
1、硬件層面監(jiān)控,比如服務(wù)器負(fù)載、CPU、內(nèi)存、IO、網(wǎng)絡(luò)流量等 。
2、進(jìn)程運(yùn)行狀態(tài),比如說消耗的內(nèi)存、CPU、IO等 。
3、模塊間調(diào)用鏈,各個(gè)模塊、機(jī)器間的調(diào)用信息,是故障定位的關(guān)鍵數(shù)據(jù)之一 。
4、業(yè)務(wù)指標(biāo),業(yè)務(wù)總體層面上的數(shù)據(jù)監(jiān)控 。
不同類型的數(shù)據(jù)簡化成如下格式,方便對數(shù)據(jù)進(jìn)行處理 。
其中底下兩層都用IP+Key的格式,后來出現(xiàn)了容器后,使用ContainerID、IP、Key的格式 。
而模塊調(diào)用信息,又把模塊的被調(diào)總體信息抽出來,跟業(yè)務(wù)指標(biāo)共用ID、Key的數(shù)據(jù)格式 。
【微信監(jiān)控技術(shù) 怎么監(jiān)控微信】


    以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時(shí)就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

    「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: