商城架構(gòu)
- 社區(qū)app中的:app中嵌入的電商,采用h5; 意圖將app的用戶轉(zhuǎn)化為電商客戶
系統(tǒng)架構(gòu)
- 全面采用,阿里云mysql,主機(jī)都部署在阿里云上面
- mysql 主從結(jié)構(gòu),erp的數(shù)據(jù)來源于從庫
- 架構(gòu)分布式,因?yàn)橛脩袅勘容^大,dubbo作為服務(wù)化框架
- 訂單原子服務(wù),交易中心,商城mall,商城cms系統(tǒng),erp系統(tǒng)
- 逐步拆分原則;購物車服務(wù),優(yōu)惠券服務(wù)等
- 服務(wù)有原子服務(wù),核心服務(wù)等,還有公司的公共組件建設(shè)
商城系統(tǒng)架構(gòu)圖

架構(gòu)劃分
- mall web是對用戶端的 商城:包括 商品信息,地址信息,優(yōu)惠券,廣告位,購物車等操作
- trade web是 交易系統(tǒng): 包括用戶的 支付交易
- order服務(wù) 是 訂單服務(wù)對訂單的原子服務(wù)都在放到order服務(wù)中
- mall cms就是 對商城的商品,優(yōu)惠券等管理
- 任務(wù)系統(tǒng):定時任務(wù)的相關(guān)業(yè)務(wù)
- 主要使用msql主從,redis緩存,kafak和ons的消息隊(duì)列,全部部署在阿里云上
交易中心 流程分析
- 在確認(rèn)訂單頁面,客戶端發(fā)起支付的時候,生成訂單,狀態(tài)為待付款
- 從購物車中將取出所有產(chǎn)品,計算后(優(yōu)惠券,直減等)生成訂單
- 購物車的沒有獨(dú)立成服務(wù),簡單的放在 redis中
- 計算 看購物車的 商品是否還有,是否限購等(規(guī)則),否則跳轉(zhuǎn)到購物車詳情頁面
- 調(diào)用訂單服務(wù),生成訂單,第三方回調(diào)后修改支付信息和訂單狀態(tài),完成拆單
和erp系統(tǒng)的對接
- erp系統(tǒng)的上游數(shù)據(jù) 直接來源商城數(shù)據(jù)的從庫
- erp系統(tǒng)的采購,入庫,發(fā)貨,物流等
- 庫存方面 共享redis可以解決
思考
- 隨著業(yè)務(wù)的反正,訂單量的快速增長,這架構(gòu)是滿足不了發(fā)展的
- 服務(wù),部署耗費(fèi)大量時間,因?yàn)闆]有運(yùn)維...
- 服務(wù)分級:web對外的無狀態(tài)水平擴(kuò)展,核心服務(wù),原子服務(wù)等,灰度發(fā)布, 自動擴(kuò)容等
- 服務(wù)劃分: 后期應(yīng)該 抽象出: 優(yōu)惠券服務(wù) , 購物車服務(wù)等
- 基本可以滿足一定規(guī)模的