支付寶所使用的架構分爲兩類三層,分別是運維平臺(IAAS),技術平臺(PAAS),業務平臺(SAAS)。這三個平臺,分別從底層,中間層和應用層提供服務。數據庫
由於雙十一當天的用戶數量,訪問量,以及全部的數據都會是平時的幾倍,因此對系統的要求也相對提升了,還要提供一套完整的備災方案和故障恢復體系。保障系統的正常運行。基於以上幾個需求,咱們提出了邏輯數據中心架構,核心思想是把數據水平拆分的思路向上層提到接入層、終端, 從接入層開始把系統分紅多個單元,單元有幾個特性:緩存
1.每一個單元對外是封閉的,包括系統間交換各種存儲的訪問;架構
2.每一個單元的實時數據是獨立的,不共享。而會員或配置類對延時性要求不高的數據可共享;運維
3.單元之間的通訊統一管控,儘可能走異步化消息。同步消息走單元代理方案;異步
同時這套架構解決以一些問題:性能
1.因爲儘可能減小了跨單元交互和使用異步化,使得異地部署成爲可能。整個系統的水平可伸縮性大大提升,再也不依賴同城IDC;測試
2.能夠實現N+1的異地災備策略,大大縮減災備成本,同時確保災備設施真實可用;大數據
3.整個系統已無單點存在,大大提高了總體的高可用性;同城和異地部署的多個單元可用做互備的容災設施,經過運維管控平臺進行快速切換,有機會實現100%的持續可用率;優化
4.該架構下業務級別的流量入口和出口造成了統一的可管控、可路由的控制點,總體系統的可管控能力獲得很大提高。基於該架構,線上壓測、流量管控、灰度發佈等之前難以實現的運維管控模式,如今可以十分輕鬆地實現。代理
這套架構已經在近幾年的雙十一應用上了,而且提供了很好的服務,這套架構還擁有三個維度的可伸縮策略。
在當前大數據是的時代,最重要的一點仍是要保證數據的可靠性,因此單元化化建設就顯得十分重要,使得數據和應用走向異地成爲了現實,具有了較好的擴展性和流量管控能力。在可用性方面,與金融雲帳務體系深度結合,借用帳務系統的failover能力,使得螞蟻花唄經過低成本改造就具有了同城災備、異地災備等高可用能力。任何一個單元的數據庫出了問題、可以快速進行容災切換、不會影響這個單元的用戶進行螞蟻花唄支付。在穩定性方面,藉助於雲客戶平臺的高穩定性的能力,將螞蟻花唄客戶簽約造成的合約數據遷移進去,並預先寫入雲客戶平臺的緩存中,在大促高峯期緩存的命中率達到100%。同時,結合全鏈路壓測平臺,對螞蟻花唄進行了能力摸高和持續的穩定性測試,發現系統的性能點反覆進行優化,使得大促當天系統平穩運行。
因此一個良好的架構須要三個方面,首先須要良好的策略和思路知道去建設架構,其次還須要有足夠的設施硬件去支持架構的運行,最後還須要相關方面的人才去執行。這纔會是一個好的團隊。