咱們都知道,當今的時代是一個新技術蓬勃發展的時代;大數據、雲計算、移動互聯網、物聯網……做爲應用服務開發者的咱們,有了不少很好的選擇;咱們的傳統的應用基礎架構也開始向雲端遷移;咱們看一下,如今企業應用IT架構是什麼樣?前端
很典型,從用戶一直到硬件,很立體的六個層面,從用戶到CDN,到防禦牆,防禦牆內有一堆的服務器,跑的是你的代碼,還有一堆的硬盤作數據存儲,這是我們傳統企業的應用架構。到了雲的時代,由於我要講的是雲時代的APM,架構就變成這樣了,後端防火牆的一些東西都隱化了,到了雲時代背後的通常都變成一種資源,包括網絡,可能不少人也不必定知道,網絡怎麼把它變成一種資源,有一種技術叫SDN,把全部東西變成資源之後在雲上咱們看到的狀況會很不同。到了雲的時代,不少東西都在雲上,爲何會發生這樣的變化呢?後端
既然是一種技術趨勢上升帶來的變化,確定是有不少的好處;就拿青雲的服務爲例,給咱們技術部門有哪些幫助呢?安全
秒級調度 全部計算、存儲、網絡資源都是秒級響應。若是初始資源不夠用,能夠彈性擴展伸縮。不須要的資源能夠隨時銷燬。隨需應變,無需等待。服務器
按秒計費,最大限度下降總擁有成本 由於青雲的資源可在秒級建立和銷燬,爲了鼓勵你們按需使用資源,咱們在計費上只根據您實際使用的時長收費,並精確到秒。讓您能夠隨時調整業務規模,無需考慮計費週期的限制。微信
私有云,搭建屬於本身的私有云環境 經過 SDN 實現的虛擬路由器和交換機,您能夠快速搭建屬於本身的私有云環境,並提供 100% 的網絡隔離,確保安全。還能與現有的計算環境經過安全隧道鏈接,造成公私兼顧的混合雲(hybrid cloud)。網絡
最大程度保障您的數據安全 私有網絡提供100%二層隔離,在這個環境裏,你的內部數據是很是安全的,黑客沒法嗅探或者截獲到你的數據。多重實時副本和備份能夠保障即便在物理硬件完全損壞時,數據也不會丟失,而且能夠很快恢復業務。 都用雲了,是否是就不用擔憂咱們的業務系統了呢?一切就完美了嗎? 咱們的業務必定能向咱們指望的那樣,快速,穩健增加嗎?架構
咱們能夠從另一個角度來思考這個問題;不知道何時開始,咱們都聽過「用戶體驗」這個名稱;什麼是用戶體驗呢?運維
百度裏是這樣解釋的:用戶使用產品和服務過程當中創建起來的純主觀感覺;性能
那麼這種純主觀感覺實際上包含不少的要素;好比說漂亮的視覺設計、貼心專業的服務、快速的用戶響應、極致簡潔的交互界面等等。大數據
可想而知,上面的這些要素都會影響到用戶的純主觀感覺,那其實咱們今天還要分享一個要素,就是性能;固然性能這塊,有不少的數據,好比說網絡延遲每增長0.4秒,亞馬遜每一年將損失16億美圓,性能每減小0.4秒,雅虎訪問量就會增長9%,還有移動App裏面很是經典的五秒鐘定律;若是你的App應用的響應時間大於5秒鐘;那麼50%移動應用用戶會放棄,30%用戶會卸載,33%失望的用戶會轉向競爭對手的應用。
因此小米的雷軍也在說一句比較經典的話:拋開性能談體驗,都是耍流氓。
固然他說這句話時候是在小米手機發佈會上針對手機跑分是這樣,針對咱們線上的業務系統實際上也徹底適用;咱們不由思考,爲何性能這樣重要呢?
很簡單,性能影響用戶體驗,用戶體驗影響的是咱們的業務營收,業務營收就是白花花的金錢;因此這個等式就成立了,即咱們的系統性能就等於金錢!既然和錢有關係,咱們固然要很好的解決掉。
那咱們說了這麼的性能,對於性能咱們應該如何理解呢?
實際上雲智慧對性能的抽象理解很簡單,只有兩點:
第一個挑戰是業務中斷,確實對企業來講這是最大的挑戰,業務中斷有再多的用戶沒用。因此對企業來說,業務是永遠不能斷的。
第二個挑戰是什麼?性能緩慢,咱們回想中國GDP增加曲線,從1978年的3650到2014年的636463,保持平均每一年8%的快速增加,經濟發展速度是至關的快。中國經濟的發展不能慢,爲何?慢了掙錢就少了,掙錢少了中國經濟就要崩潰陷入中等收入陷阱,咱們也不能慢,慢了說明用戶要跑了,錢也就沒了,企業也就發展不了,因此天下武功惟快不破。慢表明什麼?慢表明性能,性能的好和壞。因此說對於在線提供產品和服務的咱們,性能就表明一切!
那咱們也在思考,性能影響是經過什麼表達給咱們;響應時間、吞吐率、延遲、丟包率、慢查詢、代碼堆棧、崩潰率等等——這是一大堆技術參數,很難理解;而偏偏,咱們的IT系統運行產生的指標都是很數據化的;傳統作APM的方法作到了必定層面的數據可視化,可是對解決問題實際的用戶體驗問題我以爲還不夠直觀,爲何?
其實咱們最指望看到的是,用戶在作什麼的時候怎麼樣了?每個他在下單的時候是開懷大笑仍是憤怒無邊?而這一切,經過用戶行爲性能分析的層面,咱們是可以作的。
當咱們的身體出現問題時,只有CT才能在幾分鐘內給患者完成從頭到腳的全身掃描,從而準確發現病竈,爲後續的治療提供準確的依據。
今天的互聯網就像人體同樣強大而複雜,一款看似簡單的網絡應用,須要服務器、存儲、系統、應用環境、網絡和用戶電腦/手機設備的一系列支持,才能順暢運行。當應用發生故障時,好比用戶沒法登陸、頁面打不開、搜索沒結果,誰來幫助咱們快速而準確的定位應用的問題?
APM就像是部署在互聯網上的CT掃描設備,經過SDK採集用戶端數據,經過監控點採集網絡數據,經過探針採集服務器上各類軟硬件環境數據,而後利用大數據技術把採集到的數據進行快速診斷分析,發現影響應用性能的「病竈」,並給出診斷建議。
參考和分析市場上國內外的應用性能管理的解決方案;雲智慧獨創面向業務的基於用戶行爲性能的方法;這是基於真實的用戶行爲角度來分析應用的性能表現;分析的維度包括行爲的維度和用戶的維度。
行爲的維度,是從影響業務的各類行爲入手來分析行爲背後的影響;好比有一個行爲叫「支付」,在一段時間內,有1000人支付,其中有400人由於性能問題受到了影響;他們沒有支付成功,那麼這400人就給業務形成了很大的影響,平均每一個人100元的支付額,那就是40000元的業務損失;接下來咱們分析400人中有多少人是由於前端的Crash問題,可能有150人,咱們接下來再分析這150人都用什麼樣的手機,系統,運營商,這樣一步步有助於咱們定位問題;也可能有250人是由於後端的服務質量問題形成影響,體如今加載緩慢上,那麼咱們能夠分析後端的各類服務服的質量。
咱們還原一個需求的場景;有一天忽然有個用戶投訴支付緩慢,支付不成功;這個時候咱們技術部門如何快速定位到這個用戶的問題,當時的歷史快照是什麼?目前沒有很好的辦法;用透視寶的用戶分析,咱們能夠定位到系統的每一個用戶的每次操做的性能問題上;簡單的搜索就能夠查到當時這個用戶操做時發生了什麼,包括前端和後端的總體記錄均可以定位到;
另外有的時候咱們也關心一類用戶的問題,好比說某個區域的聯通運營商用戶,好比都用了某款國產手機;經過透視寶的用戶篩選功能,咱們能夠針對特定人羣進行問題分析,快速找到這類瓶頸。
真正的端到端應該是從用戶端到後端的物理服務器以及代碼端的完整穿透;
並且應該是基於細化到每一個用戶的每一個真實行爲操做層面來看待;
化到每一個操做層面的端到端,讓深刻定位問題有了可能;經過標記在每一個行爲操做上的Unique ID,透視寶將整個操做背後全部相關環節「拍照」;這樣很是有助於咱們真實還原問題細節;
透視寶可以幫助運營人員實時分析業務,明確業務性能問題以快速適應市場變化;幫助開發人員基於問題事件定位架構及代碼瓶頸,以實現快速構建及改進持續交付;提供端到端全技術棧監控,幫助運維人員快速定位、預測IT系統問題,確保運維SLA與服務質量;面向管理層,提供多維報告與數據決策支持,幫助企業實現用戶滿意度及運營效率持續提高、企業營收不斷提升。
本文做者:陸興海(Yak)
2007年碩士畢業於西北工業大學,信息化技術研究方向。工做從事軟件產品設計開發多年,現任雲智慧產品總監,致力於面向大數據的IT系統監控軟件以及應用性能管理(APM)平臺的規劃、設計與傳播。熱愛互聯網,專一產品設計,喜歡雲計算,關注大數據,對一切新鮮事物都抱有好奇心。微信號:yak1982。