伺服器資源監控主要對伺服器的cpu、記憶體、io、網路等資源的使用情況進行監控。由於推送平台部署用到了物理機和雲主機,故需要同時對這兩者的資源負載進行監控,另一方面,不同服務對伺服器負載的關注點也不同,如redis伺服器主要關注記憶體和io的負載情況,接入點伺服器主要關注cpu和記憶體負載等。
伺服器資源監控的報警策略一般採用設定閥值的方式進行。
幾乎所有產品都會對上述資源負載進行監控,故在此不做累述。
推送平台主要監控的程序有tomcat程序、rabbitmq程序、redis程序、nodejs程序等,除監測程序存活狀態及cpu、記憶體外,監控項還包括:
程序監控的報警策略一般採用監聽程序存活狀態以及設定閥值的方式進行。
應用層監控取決於服務特定業務邏輯,推送平台的應用層監控主要可以分為以下幾類:
由於推送平台有多套部署環境,某些環境涉及上百個部署節點,且已接入數十個產品的多種終端型別,故乙個監控項可能從好幾個維度才能進行完整定義,且需要按照指定的乙個或多個維度進行聚合。
以終端連線監控為例:
value=200,env=online,host=push2.photo.163.org,serverid=push2lxc10,platform=android,product=news.163.com
表示某一時刻連線到線上環境物理機push2.photo.163.org的lxc節點push2lxc10上的新聞產品(news.163.com)android終端長連線數目為200。 但最終監控結果可能需要按照不同的維度來顯示,譬如:
為此,需要對聚合維度進行定義:
aggregation-keys=,......
由於應用級監控和服務業務邏輯有關,所以不適合採用設定閥值的報**式,可以考慮變化率報**式,例如,某個產品當前時刻android終端長連線總數比前五天同一時刻長連線總數的平均值低20%,可以認為服務存在異常,觸發報警。
sla全稱服務品質協議,是服務提供者和使用者之間的乙個正式合同,用來保證系統服務質量,如效能、穩定性、響應速度等達到定義的品質。例如,訊息推送平台的sla部分指標為:
sla的關鍵在於可測量,否則無從驗證是否達到了承諾的服務質量。推送平台由於請求非同步執行及移動網際網路的特性,sla測量存在一定的難度。以點對點訊息到達時間為例,測量需要考慮的因素有:
上述因素將導致sla測不准而失去意義。為此,考慮採取模擬取樣方案,具體描述如下:
建立乙個sla專用產品域,與其他產品共用線上環境;
針對每種終端型別在雲主機上模擬一定數目的終端連線,終端鏈結數目》10*接入點數目,每個終端連線具有不同的deviceid,但模擬相同的使用者賬號,並以固定時間間隔主動進行重連;
模擬產品服務端以固定時間間隔推送訊息;
統計訊息推送路徑各組成部分的耗時;
以此域的服務質量統計資料作為sla指標的驗證依據;
根據統計資料輸出90%/95%/99%圖表,並建立報警;
訊息推送平台高可用實踐(下)
伺服器資源監控主要對伺服器的cpu 記憶體 io 網路等資源的使用情況進行監控。由於推送平台部署用到了物理機和雲主機,故需要同時對這兩者的資源負載進行監控,另一方面,不同服務對伺服器負載的關注點也不同,如redis伺服器主要關注記憶體和io的負載情況,接入點伺服器主要關注cpu和記憶體負載等。伺服器...
訊息推送平台高可用實踐(上)
訊息推送平台為公司內部和第三方應用提供統一訊息推送服務,支援廣播 私信 組播 附件等多種訊息推送方式,覆蓋ios android pc web等多種終端,並根據應用特定需求制定各種解決方案。平台支援水平擴充套件,支援c5000k高併發下的實時訊息推送,通過動態負載均衡 隔離部署 lxc虛擬化和監控報...
imo 開放平台訊息推送
中國網際網路辦公室 imo運營中心目錄 1引言 3 1.1編寫目的 3 1.2讀者物件 3 1.3文件內容 3 1.4系統說明 3 2 業務流程 4 3 介面說明 6 4 接入範例 7 說明訊息推送系統的業務流程。需要接入訊息推送的第三方,以及訊息推送系統的開發,產品人員 訊息推送授權申請和介面說明...