蘑菇街運維體系及雙十一關鍵技術分享
關于蘑菇街
中國***的女性時尚社交電商平臺,成立于2011年,總部位于浙江杭州,目前(2015.Q3)擁有1.3億注冊用戶,雙十一日UV超2000萬。2015.11.21日宣布完成D輪融資,并實施"一街雙城"戰(zhàn)略,杭州+北京,杭州偏電商方向,北京偏社交媒體方向。
蘑菇街業(yè)務架構(gòu)-導購期(2011-2012)
運維早期情況
早期階段(2011-2012年)
– 兩位數(shù)機器、個位數(shù)網(wǎng)絡設備。
– 沒有運維,開發(fā)即運維,靠牛逼的腳本和一些開源工具搞定。
蘑菇街業(yè)務架構(gòu)-轉(zhuǎn)型期(2013)
運維的發(fā)展
中間階段(2013年-2014年)
– 三位數(shù)服務器、兩位數(shù)網(wǎng)絡設備
– 2-3名專職運維同學(主機&網(wǎng)絡&DB&緩存&......) – 問題響應式的工作方式
– 工具化的運維平臺
- 機器資源管理(CMDB的雛形)
- PHP發(fā)布系統(tǒng)
- 從指標維度監(jiān)控系統(tǒng)(主機、QPS、RT、調(diào)用次數(shù).... )
蘑菇街業(yè)務架構(gòu)-社會化電商
我們應該怎么辦
思路:
- 建立以應用服務為核心的管理標準體系。
- 打造CMDB、流程申請、持續(xù)集成和監(jiān)控為一體的自動化運維系統(tǒng), 而不是孤立的單點系統(tǒng)。
- 把運維能力服務化(API),使運維的能力無處不在。
關于應用服務管理
案例介紹
讓我們看一個從服務器管理—申請—代碼發(fā)布—線上監(jiān)控的案例。
關于應用服務器-Hestia服務和資源管理
- 從業(yè)務的維度來管理主機-CMDB的核心概念。
- 支持擴容、上下線、設備保障、權(quán)限等常規(guī)流程申請。
- 自動化任務的配置和下發(fā)。
關于應用服務管理-Mops流程申請系統(tǒng)
關于應用服務管理-發(fā)布系統(tǒng)
以trade_ordership_service為標示,進行代碼發(fā)布。
關于應用服務管理-監(jiān)控系統(tǒng)Sentry
通用+自定義監(jiān)控,運維+開發(fā)可以時刻關注自己的服務狀態(tài)和質(zhì)量。
運維的現(xiàn)狀
專業(yè)的運維團隊 – 系統(tǒng)運維
– 應用運維 – DBA
– 運維開發(fā)
- 運維的能力向平臺化和服務化發(fā)展(DevOps,依賴于能力而不是人) – CMDB服務化平臺
– PHP+Java持續(xù)集成發(fā)布平臺
– 統(tǒng)一的監(jiān)控平臺
– 全鏈路服務質(zhì)量分析平臺 – 穩(wěn)定性平臺
– 容量評估平臺(待做)
- 工作方式的改變
– 從問題響應式,向整體解決方案提供方向發(fā)展
雙11技術保障,運維做了什么?
雙11關鍵技術分享—全鏈路系統(tǒng)
全鏈路背景
- 復雜的分布式系統(tǒng),頁面上的一次鏈接點擊,在后端可能會產(chǎn)生幾十次的RPC調(diào)用,Web、服務化、緩存、 消息、DB.......都有可能涉及,如果出了問題,如何快速定位到故障點要擴容,如何合理評估。
- 關鍵概念,全局唯一的TraceId。
全鏈路技術架構(gòu)
全鏈路應用-快速發(fā)現(xiàn)問題點和瓶頸點
全鏈路應用-調(diào)用合理性分析
沒有明顯的瓶頸點,每一次調(diào)用RT也很正常,但是全鏈整體的RT卻很高,問題又出在哪里了呢?
全鏈路使用后的收益和后續(xù)
使用全鏈路后的收益
– 提升問題的定位效率 – 準確的評估容量
后續(xù)
– Mogu-Watch,與前端打通,實現(xiàn)用戶全鏈路的分析 – 壓測做到平時,與容量評估平臺和資源分配打通。
– 引入云資源彈性擴容,避免應對峰值的批量機器采購。
壓測之后,關鍵技術改造-ATS靜態(tài)化方案
靜態(tài)化方案背景和簡介
– 主鏈路(首頁-詳情&活動-交易-支付),降低RT,提升容量。
– 資源類的如圖片、CSS、JS等的靜態(tài)化方案都會采用CDN技術。
– 對于頁面內(nèi)容類的數(shù)據(jù),如商品名稱、商品詳情等都屬于靜態(tài)數(shù)據(jù),而 商品的庫存、優(yōu)惠等則需要獲取動態(tài)結(jié)果。
– 對于活動頁面、H5活動推廣頁面等,則可以完全靜態(tài)化。
ATS(Apache Traffic Server)靜態(tài)化技術方案-Cheetah
ATS靜態(tài)化案例-商品詳情頁
ATS靜態(tài)化使用后的收益和后續(xù)
- 使用靜態(tài)化后的收益
– 詳情頁(全站流量的30%+)靜態(tài)化在雙11期間的***率達到95%,換言之,減少了后端服務接近30%的流量壓力。
– RT從原來200ms降低到50ms,用戶體驗大大提升。
– 容量提升,減少了后端服務器的數(shù)量。
- 后續(xù)
– 借助云資源搭建云上的ATS,更貼近用戶 – ATS Cluster方案。
– 支持HTTPS。
– 回源流控和容災控制。
限流&降級開關推送和WEB應急擴容方案
- 限流&降級開關
– 限流,Web層,防止被流量打垮。
– 降級,App層(服務化),保障核心應用。
- •Web應急擴容方案
– 選擇Docker 容器,批量生成效率高 – 啟動速度快。
– 資源利用率提升明顯。