對於開發人員來講,其應用性能是須要特別關注的。在用戶體驗至上的大環境要求下,性能優化是十分必要的。無心中在知乎看到的這個問題,發現了成都華天創騰一位開發人員的回答分析了阿里雲監控功能及 OneAPM 服務器端監控的使用對比,那麼就來看下他的故事吧!如下是未經修改的原文:html
過久沒有寫博客了,只是一味的吸取網上的攻略,感受有點對不起這個行業。作了太多的拿來主義,歷來沒有幾個原創給行業帶來一點點的貢獻!好吧裝 B 裝完了。說正事。數據庫
話說工欲善其事必先利其器,這裏最近發現一個造神器的公司,OneAPM - 端到端的應用性能管理軟件雲解決方案。安全
先介紹下個人服務器,做爲創業公司沒有那麼多 ¥ 去買實體服務器,託管,運維,安全防禦都是一個大問題。全部當時還好有點經驗,理智的給老闆介紹了購買阿里雲服務器。一下就搞定了這些全部的煩惱(當時是這麼認爲的),而且阿里雲提供了服務器狀態監控,服務監控。可是這些仍然只是知足了平常監控和運維的需求。一旦遇到詳細點的性能監控的需求就嗝屁了。性能優化
原本是在找服務器運行狀態監控軟件的時候,無心在網上發現了 OneAPM,註冊了一個帳號後後來沒有怎麼使用,他們當時尚未推出我需求的服務器監控的軟件,後來他們出了新版本後積極聯繫我,本覺得他們和阿里雲的東西差很少,後來在他們客服妹妹的悉心調教(我真沒有吃過她豆腐)下裝了一個試了試,不用不知道一用嚇一跳,這個東西比阿里雲的監控的詳細多了。服務器
上圖有圖纔有真相網絡
阿里雲的監控運維
OneAPM 的監控工具
優點一下就出來了有木有,阿里雲的監控只提供了整體的一個數據監控,而 OneAPM 提供了很是詳細的佔用信息。雖然 Linux 下也能夠用命令看,可是我是比較懶的人(尼瑪事情多的爆啊,能用一分鐘解決的問題毫不想花兩分鐘)性能
話說他給我解決了什麼問題吧,因爲最近業務量暴漲,忽然多了很是多的寫庫操做。致使數據庫服務器的 CPU 暴漲一直都是 100%,尼瑪這東西當時致使監控的服務器和服務各類報警,直接嚇尿了,到阿里雲監控上只看到了 CPU 佔用了百分之可是那個程序佔用的尼瑪徹底木有任何信息啊全靠本身去慢慢琢磨,老闆的要求是服務器報警不能超過 30 分鐘必須解決時間緊迫。當時登錄了 OneAPM 後臺看採集回來的數據,清清楚楚的看到是 MySQL 數據庫。幾乎吞噬了全部數據庫服務器的 CPU 這樣下去不致使數據庫服務器宕機纔怪。優化
接下來 用OneAPM 的應用監控,查看服務對數據庫的讀寫操做按次數進行排序,基本上是9:1的讀寫比例。
還好哥當時留了一手有先見之明,在另外的服務器上準備了一個從備份庫,而且配置 **oeba
的讀寫分離,由於 PHP 接口用 amoeba 會報錯,因此都是直連的主庫。可是分析了最近的寫庫業務都是來源於 Java 服務,趕忙把 Java 的服務都切到 **oeba
服務的數據庫中間件上,作了讀寫分離後 CPU 分分鐘降到了 50% 的正常水平,從早上 8 點報警到中午十二點,基本解決了由大量數據寫入數據庫致使的 CPU 暴漲引發的一次性能問題。神器在手天下我有!!
其實我就是作了一次打醬油的其餘的都給工具作了!!
------以上是分享的所有內容------
OneAPM Servers 能夠幫助企業和開發者經過觀察、分析關鍵的系統參數,包括 CPU 利用率、物理內存、網絡活動、進程、磁盤利用率及容量,展示當前服務器的健康情況.,您能夠訪問 OneAPM 官方網站體驗試用,或訪問 OneAPM 官方博客 閱讀更多技術文章。