一、京東商城整個的系統(tǒng)架構(gòu)
京東商城系統(tǒng),融合了自營模式、商城模式、三方平臺等模式,跟淘寶、天貓以商城模式為主的電商系統(tǒng)相比,業(yè)務(wù)模式上要豐富很多,包括許多WMS、TMS、OMS的部分。
京東商城業(yè)務(wù)架構(gòu)設(shè)計原則
1、業(yè)務(wù)平臺化
業(yè)務(wù)平臺化,相互獨立。如交易平臺、倉儲平臺、物流平臺、支付平臺、廣告平臺等 。基礎(chǔ)業(yè)務(wù)下沉,可復(fù)用。如用戶、商品、類目、促銷、時效等。
2、核心業(yè)務(wù)、非核心業(yè)務(wù)分離
電商核心業(yè)務(wù)與非核心業(yè)務(wù)分離,核心業(yè)務(wù)精簡(利于穩(wěn)定),非核心業(yè)務(wù)多樣化。如,主交易服務(wù)、通用交易服務(wù) 。
3、區(qū)分主流程、輔流程
分清哪些是電商的主流程。運行時,優(yōu)先保證主流程的順利完成,輔流程可以采用后臺異步的方式。避免輔流程的失敗導(dǎo)致主流程的回滾。如,下單時,同步調(diào)用快照,異步通知臺賬、發(fā)票 。
4、隔離不同類型的業(yè)務(wù)
交易業(yè)務(wù)是簽訂買家和賣家之間的交易合同,需要優(yōu)先保證高可用性,讓用戶能快速下單,履約業(yè)務(wù)對可用性沒有太高要求,可以優(yōu)先保證一致性 ,閃購業(yè)務(wù)對高并發(fā)要求很高,應(yīng)該跟普通業(yè)務(wù)隔離。
延伸閱讀:
二、應(yīng)用架構(gòu)設(shè)計原則
1、穩(wěn)定性原則
一切以穩(wěn)定為中心;架構(gòu)盡可能簡單、清晰;不過度設(shè)計。
2、接耦/拆分
穩(wěn)定部分與易變部門分離;核心業(yè)務(wù)與非核心業(yè)務(wù)分離;電商主流程與輔流程分離;應(yīng)用與數(shù)據(jù)分離;服務(wù)與實現(xiàn)細節(jié)分離。
3、抽象化
應(yīng)用抽象化:應(yīng)用只依賴服務(wù)抽象,不依賴服務(wù)實現(xiàn)細節(jié)、位置;
數(shù)據(jù)庫抽象化:應(yīng)用只依賴邏輯數(shù)據(jù)庫,不需要關(guān)心物理庫的位置和分片;
服務(wù)器抽象化:應(yīng)用虛擬化部署,不需要關(guān)心實體機配置,動態(tài)調(diào)配資源。
4、松耦合
跨域調(diào)用異步化,不同業(yè)務(wù)域之間盡量異步接耦。