支付寶系統架構(內部架構圖)

支付寶系統架構(內部架構圖)

2016-09-11 支付圈

 

前言

支付寶是中國支付行業的一個標兵,不管是業務能力仍是產品創都引領者中國支付行業的前沿,做爲支付業務的基礎系統的複雜性和穩定性是支付業務是否可以及時快速安全處理的根本,本期支付圈收集了支付寶的系統架構圖包含:清算 客服  處理  資金 財務 等等 供其餘支付公司進行參考!python

本文爲網絡收集信息,雖然不屬於支付寶的最新系統架構信息可是做爲支付行業的龍頭,架構系統依然值得學習!mysql

 


支付寶系統架構概況sql

典型處理默認數據庫



資金處理平臺apache



財務會計

緩存



支付清算

安全



覈算中心

網絡




交易架構

 

 


柔性事務異步

 

 

 

 

 

 

 

 

 


支付寶的開源分佈式消息中間件--Metamorphosis(MetaQ)

Metamorphosis (MetaQ) 是一個高性能、高可用、可擴展的分佈式消息中間件,相似於LinkedIn的Kafka,具備消息存儲順序寫、吞吐量大和支持本地和XA事務等特性,適用於大吞吐量、順序消息、廣播和日誌數據傳輸等場景,在淘寶和支付寶有着普遍的應用,現已開源。

Metamorphosis是淘寶開源的一個Java消息中間件。關於消息中間件,你應該據說過JMS規範,以及一些開源實現,如ActiveMQ和HornetQ等。Metamorphosis也是其中之一。

Metamorphosis的起源是我從對linkedin的開源MQ--如今轉移到apache的kafka的學習開始的,這是一個設計很獨特的MQ系統,它採用pull機制,而不是通常MQ的push模型,它大量利用了zookeeper作服務發現和offset存儲,它的設計理念我很是欣賞並贊同,強烈建議你閱讀一下它的設計文檔,整體上說metamorphosis的設計跟它是徹底一致的。可是爲何還須要meta呢?

簡單歸納下我從新寫出meta的緣由:

  • Kafka是scala寫,我對scala不熟悉,而且kafka整個社區的發展太緩慢了。

  • 有一些功能是kakfa沒有實現,可是咱們卻須要:事務、多種offset存儲、高可用方案(HA)等

Meta相對於kafka特有的一些功能:

  • 文本協議設計,很是透明,支持相似memcached stats的協議來監控broker

  • 純Java實現,從通信到存儲,從client到server都是從新實現。

  • 提供事務支持,包括本地事務和XA分佈式事務

  • 支持HA複製,包括異步複製和同步複製,保證消息的可靠性

  • 支持異步發送消息

  • 消費消息失敗,支持本地恢復

  • 多種offset存儲支持,數據庫、磁盤、zookeeper,可自定義實現

  • 支持group commit,提高數據可靠性和吞吐量。

  • 支持消息廣播模式

  • 一系列配套項目:python客戶端、twitter storm的spout、tail4j等。

所以meta相比於kafka的提高是巨大的。meta在淘寶和支付寶都獲得了普遍應用,如今天天支付寶天天經由meta路由的消息達到120億,淘寶也有天天也有上億的消息量。

Meta適合的應用:

  • 日誌傳輸,高吞吐量的日誌傳輸原本就是kafka的強項

  • 消息廣播功能,如廣播緩存配置失效。

  • 數據的順序同步功能,如mysql binlog複製

  • 分佈式環境下(broker,producer,consumer都爲集羣)的消息路由,對順序和可靠性有極高要求的場景。

  • 做爲通常MQ來使用的其餘功能

整體結構:

 



內部結構:

來源【fd2012】

 

支付圈今天推薦一下咱們的備用號,你能夠點擊添加,更多信息盡在關注!

長按二維碼關注支付圈

相關文章
相關標籤/搜索