第三期聽云應用性能管理大講堂干貨分享
5月16日,領秀新硅谷迎來了第三期聽云應用性能管理大講堂,講堂吸引了來自不同行業(yè)近200名小伙伴前來參加,同時還有300多位同學通過網絡觀看了沙龍全過程,現場氣氛火爆非常,而鳥哥(惠新宸)的出場更是將大講堂的氣氛推向更高峰。
移動互聯網時代來臨,如何進行架構的演進?如何進行性能的優(yōu)化?如何判斷代碼執(zhí)行效率與性能瓶頸定位?這些都是困擾著開發(fā)者種種問題。本次應用性能管理大講堂,鳥哥連同聽云、鏈家網、58同城的技術大牛們?yōu)榇蠹規(guī)硭麄冊谛阅軆?yōu)化上最權威的成果和經驗。
鏈家網:存儲系統演化
大講堂上來便是十足干貨,來自鏈家網系統工程師尹吉峰為了大家?guī)砹随溂揖W存儲系統演變的過程,從最開始的需求到過程中各種系統的不斷嘗試再到最后相關性能優(yōu)化,事無巨細,悉究本末。
尹吉峰提到鏈家網是房產垂直的網站,有很多房源數據,滿足他們需求的圖片大多4兆左右,分為大中小類型,服務端有大量優(yōu)質數據,以及體積很小中間數據和一些語音/視頻等大文件。他們期望有一個PB級別無單點,通用文件大小可調配的系統。最開始他們選用輕量級的FASTDFS,但是沒有一個真實成功的例子說明FASTDFS可以到PB級別的,經過研究改造以后基本滿足需求。
隨后尹吉峰講到底層存儲系統的選擇。經過對比他們最終選擇AWS S3作為存儲接口,而在存儲方案選型問題上陷入了兩難的境地:公有云成本低但安全無法保障;商業(yè)解決方案成本高,投入后無法抽身;開源技術方案便宜但是費心。經過權衡他們最終選擇了云計算里面最具吸引力認可度最高的Ceph。
Ceph 最佳實踐
深入代碼級的端到端的應用性能管理
緊接著聽云CTO Wood分享的聽云端到端應用性能管理(APM)解決方案以及聽云APM在應用性能管理上的實踐經驗與技術也是干貨滿滿。
Wood解釋到APM是對軟件應用的性能和可用性進行監(jiān)控和管理,致力于發(fā)現和定位性能瓶頸和故障,保證應用達到預期服務水平。而整個應用生命周期,從需求開始到研發(fā)到測試再到運營都需要監(jiān)測。復雜的應用交付鏈下傳統IT運維收到了很大的挑戰(zhàn),而APM自上而下的監(jiān)控方式為用戶、業(yè)務、代碼、服務以及用戶體驗提供了保障。只要在可能形成性能瓶頸代碼或者可能誘發(fā)其他性能問題的位置嵌入盡量簡潔的代碼就能實現APM。隨后Wood為大家演示了聽云App以及聽云Server的真實用戶案例。
聽云App一直關注的問題:網絡接入(弱網2G/3G,小運營商接入)、機房鏈路、服務端接口、第三方服務(CDN,推送,云服務)、區(qū)域運營商問題(劫持、故障)、終端設備、系統的差異、代碼效率(交互卡頓,黑白屏)、代碼質量(崩潰,異常,錯誤)。
聽云App用戶案例
聽云Server關注的問題:應用響應時間、業(yè)務性能,吞吏率,成功率、服務性能(SQL,NoSQL,API,外部服務…)、代碼效率(追蹤,剖析)、代碼質量(錯誤,異常)。
聽云Server用戶案例
鳥哥惠新宸:性能優(yōu)化那些事兒
經過現場觀眾與講師Q&A互動和短暫的休歇以后,鳥哥(惠新宸)的登場引爆全場。作為國內最有影響力的PHP技術專家,現任新浪微博任平臺及數據部總架構師兼首席PHP顧問的鳥哥在編程語言實踐與系統架構方面有著豐富的性能優(yōu)化經驗,本次大講堂鳥哥在性能優(yōu)化方面的經驗給了大家很多啟發(fā)。
鳥哥提到性能優(yōu)化是多方面的事,在關注應用性能之前應該先考慮應用的正確性、穩(wěn)定性和安全性。在確定需要優(yōu)化以后在去進行,而性能優(yōu)化也不應該是一個人或者一個團隊的事,他告誡大家,永遠不要憑主觀臆測去優(yōu)化。性能優(yōu)化時需要一個標準來衡量優(yōu)化的過程,同時也需要定出優(yōu)化步驟和時間段。
隨后鳥哥講到性能優(yōu)化應該從業(yè)務層面到管理層,再往下發(fā)展到不同層面,最上面的業(yè)務層優(yōu)化收益往往最大。參與優(yōu)化的人員每一個人都寫日志非常必要的,從系統環(huán)境開始入手做優(yōu)化,首先檢查配置有沒有問題,再往下是模塊合適與否,最后拓展到不同層面上,這個過程一直持續(xù)到你滿意為止。
最后鳥哥鼓勵大家建立一個“系統”去優(yōu)化你的系統。運維的核心是可視化,把系統中存在的各種問題匯成一個非??梢?,非常易于去看的東西,是一件應該提早去做的事。同時,鳥哥也推薦大家使用聽云這種優(yōu)秀的APM產品。
58同城MongoDB到MySQL遷移之路
大講堂的最后58同城系統架構師孫玄為大家?guī)懋敂祿吭龃蠛蜆I(yè)務并發(fā)時遇到的問題及其解決方案以及MongoDB到MySQL遷移方案。
孫玄提到選擇MongoDB是因為它方便擴展,擁有較高性能以及豐富的查詢支持和自動索引,而在使用方面根據業(yè)務的需求做出了不小的調整。接著孫玄為大家分享了MongoDB的部署以及一些實際應用經驗。
MongoDB部署介紹
最后孫玄談到當業(yè)務不斷增加數據增大時,發(fā)現整個性能在下降,在增加內存和硬盤后業(yè)務暫時穩(wěn)定,但并不能完全解決問題。
因為MongoDB進程本身不穩(wěn)定。最后選擇 MongoDB+SSD方式解決問題,決定實施 MongoDB到MySQL遷移方案。遷移時針對兩種不同的數據類型采取了不同方案:遷移簡單的時效性數據通過雙頭方式進行遷移,而永久有效的核心數據通過消息隊列方式解決數據牽引問題。
至此,第三期聽云應用性能管理大講堂落下帷幕,散場后小伙伴們久久不愿離去,三五成群的將講師們圍住,有問技術問題有問個人問題的也有和講師拍照留念的,相信本次大講堂不會只是大家工作生活的一個小小片段,讓我們一起期待下一期的到來吧!