應用監控的選型思考

最近由於項目的緣故,經常會和同學們聊到一個話題,那就是企業如何在應用性能管理(Application Performance Monitoring, 簡稱APM) 領域的開源和商業化產品中選擇合適自己的產品,下面就以該領域爲例和大家做一個分享。

先說結論:沒有統一答案,企業用戶應當從自身需求,技術掌握深度,建設成本這三個方面來衡量。

企業性質和最終方案

技術掌握程度

自身需求

建設成本

世界500強的IT部門, 最終選擇商業產品,部署方式爲專用雲 已經被各大APM廠商進行過POC,接口人對APM領域有一定理解;已經在內部進行過多輪DevOps概念推廣和相關環境建設。 1.配合壓測調優性能;2.能快速推廣和應用到全集團;3.集團大屏幕輸出;4.日常運維中的問題報警,排查,診斷。 1.產品費用+諮詢費用;2.每年的產品升級和維護費用;3.2名甲方接口人員;4.內部機器成本。最大併發監控規模:萬臺。平均每臺活躍實例/年監控成本在4000元左右。
數千人的中型互聯網公司,最終選擇基於 pinpoint 自建 負責人爲多年從事APM領域的資深專家,並有從原來APM廠商轉來的pinpoint commiter,正在進行devops建設。 日常運維中的問題報警,排查,診斷爲主。 1.4名開發人員至少一年的開發維護時間。2.2名運維人員的日常維護和推廣。3.內部機器成本。最大併發監控規模:千臺。平均每臺活躍實例/年監控成本在2000元左右。
數十人的創業團隊,最終選擇公有云商業產品 對APM領域,僅僅是聽過幾場meet up,以業務開發爲重心。 日常運維中的問題報警,排查,診斷爲主。 公有云產品費用,根據業務量,靈活擴縮容。最大併發監控規模:數十臺。平均每臺活躍實例/年監控成本在1000元左右。

產品完成度&使用場景

上面是三個不同企業規模中APM使用的一個大致情況以及他們的選型和成本情況。當把需求落到具體使用場景上時,商業化產品和開源產品在完成度上,其實也有很多區別:

使用場景

商業化產品-以阿里雲ARMS爲例

開源產品--以Pinpoint和Skywalking爲例

報警和報表:作爲日常運維工具,報警功能必不可少。在日常巡檢中,需要把關鍵信息放在一個頁面中形成報表,並且對報表定時進行推送。 支持豐富維度的數據報警設置,以及豐富的推送渠道,包括釘釘,短信,郵件等。支持用戶自定義設置各種業務報表。 支持簡單的報警功能,大部分情況下需要用戶額外進行開發和集成。
用戶反饋問題跟蹤:能根據某一個業務關鍵ID 查詢出對應的分佈式調用鏈路 和 相關的log。 支持全系排查和100%鏈路採集。 不支持。
代碼瓶頸診斷:發現問題以後,需要快速定位到代碼性能瓶頸。 無需額外的埋點,自動適配大部分主流框架,支持自定義埋點。單線程快照技術,能監控到沒有埋點的業務代碼的運行情況。 無需額外埋點,支持自定義埋點。
穩定性&可拓展性。 經過多年那雙十一挑戰,產品性能穩定。SaaS產品動態擴縮絨,無需用戶關心。 開源項目未經過大規模生產環境檢驗,需要用戶自己進行穩定性的測試,以及根據數據量進行擴縮容量。
使用諮詢。 5*8阿里雲專家諮詢服務:可針對性輸出阿里雲多年性能調優經驗和使用場景,幫助用戶快速落地APM產品。 Github issue爲主無商業化公司支持,出現問題大部分自己解決。
定製化能力。 支持通過api定製自己的展示頁面。 開源產品,可以進行任意改動。

成本計算參考

以阿里雲 ARMS 爲例,假設監控50個實例,估算下成本:

  • 機器成本:至少7臺機器 (3臺存儲,2臺應用,2臺Console)+數據庫,成本一個月四千以上;用ARMS,費用小於4000左右,成本略低於自建,幾乎持平。
  • 運維人力成本:ARMS無需擔心擴擴容,用多少付多少,ARMS無需運維工程師,節省人力開支。用以上開源軟件至少需要一個專業的運維工程師,中位數工資,約10000左右。
  • 額外開發人力成本:ARMS作爲商業產品,每月發佈一個新的版本,不斷迭代,而且功能豐富。使用開源產品需要自己開發報警和相關運維功能,至少需要2個專業的開發工程師,中位數工資,約40000左右。

總結

在當今互聯網雲時代,企業在選擇建設自己監控系統的時候,一定要結合自身情況進行產品和架構選型,具體建議如下:

公司形態 用戶畫像 建議選型
小型初創公司 以公司生存,業務發展爲主,需要快速見效並且性價比高的產品。 以公有云Saas爲主,不建議投入過多精力在監控領域的開源自建,而需要專注於核心業務發展。
中型成長企業 有較穩健業務收入和增長,希望對於技術有所發展和挑戰。 商業產品+開源產品,可以通過商業產品快速學習某一領域知識,再結合自身情況通過開源產品定製部分監控,如採用grafana定製監控大盤。
大型上市公司 有自建機房,業務求穩,而且在國內外有較強監管和合規需求。 考慮採用專有云和混合雲的商業化服務爲主,可以配合廠商嘗試開源產品,部分科技型公司可選型開源產品。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章