1. 程式人生 > >混合雲模式架構設計

混合雲模式架構設計

專案背景:

使用者通過域名訪問vip, nginx做為負載均衡為後端應用分發請求, 後端應用為dubbo服務,儲存分為redis和mysql. redis做為持久會儲存資料庫,支援前端業力. 並且通過mq同步資料到mysql,供後端使用. 同時後臺寫mysql也要通過mq同步到redis.

目前後端服務qps最高可以達到5萬,本次架構設計在不重構的情況下短期內最快的方法達到目標10萬qps.

架構方案:

一,現有idc架構可支撐5萬qps。這是經過一年考驗下來的,可做為保底的;如果應用全部上雲,需要從0開始重新驗證能否達到現有5萬qps,再去驗證能否達到10萬qps,時間等未知風驗很大;

二,10萬qps目標,建議用簡單粗暴的方式,直接把idc應用層架構複製一套上雲;不建議在現有架構上繼續調優,現在架構如果不重構,可能很難找到問題;與其這樣不如把人力時間用到另一個方向,比如資料中心;
三,由idc+公有云兩套系統構成混合雲模式,資料統一使用idc的redis和mysql,公有云與idc 的資料庫連線建立專線;混合雲的方式可以檢測公有云的實際效能,也能為將來全部遷移公有云提供真實參考;四,平時比賽,使用idc架構完全可以支撐,公有云留少量機器和使用者請求預熱,重要比賽,臨時增加雲資源扛突發,伺服器成本節約,擴充套件性也靈活;五,公有云都有出現過大規模事故,造成全站不能訪問的情況,為了保險,我們依然要保留idc的服務,所以混合雲也許是最適合的;技術難點:一,如何將使用者請求分流到 idc和公有云兩套應用1,域名解析兩條A記錄,分別指向idc和公有云兩個vip,通過dns平均分配使用者請求
2,idc架構在nginx前端增加四層負載均衡(lvs,ha_porxy),由四層負載均衡將使用者請求轉發給idc的nginx和公有云的負載均衡,lvs與公有云通訊通過專線;二,前端應用入口放大,後端資料中心,需要擴容1,redis使用多主多從,redis3.0 還是用 代理(predixy,codis);2,業務拆分,組建更多的一主多從;具體實施:1,雙系統流量分發配置lvs即可,本賽季最好能用上幾輪,演練資源增減,熟悉流程,檢測可行性;2,redis資料中心需要大量的測試,選型,可做重點研究(這也是目前急需解決的單點);