食行生鮮架構設計-第一部分,電商中臺整體系統架構設計

一,概述

2020面對突然快速變化的市場環境,食行生鮮原有的系統架構已經不能滿足業務快速增長要求,

面對複雜的業務環境,需開發一套可擴展,高併發和高可用的生鮮電商系統.

因此,借鑑阿里巴巴大中臺思想,研發中心需要重構一套生鮮電商中臺業務系統,以滿足高可用,高併發,高一致性,高性能和高可拓展的要求.

二,整體業務流程

如下是C端用戶食行生鮮電商核心業務流程(非核心流程未列出):

三,業務架構

如下是電商整體業務架構設計:

 

主要包括幾大中臺:

  1. 小前臺

小前臺主要指和用戶銜接比較緊密的業務場景,主要包括

  • ToC

包括自營app(安卓/ios),H5頁面.

  • ToB

自營app和sdk.

  • 渠道

包括支付寶小程序,微信小程序等.

  • 線下店

社區生鮮店,目前只覆蓋蘇州市場.

2,業務中臺

業務中臺主要提供電商場景下的公共能力,比如支付,下單等,核心包括如下領域:

  • 用戶域
  • 活動域
  • 商品域
  • 商戶域
  • 支付域
  • 交易域
  • 供應鏈域
  • 評價域

3,技術中臺

技術中臺主要提供業務中臺公共的能力,比如流水線發佈,灰度和服務治理等,核心能力包括如下

  • 網關
  • 服務治理
  • 日誌
  • 監控和告警
  • 鏈路追蹤
  • devops

4,數據中臺

數據中臺主要基於海量數據,提供精準智能推薦,用戶畫像.目前核心能力包括:

  • 智能推薦
  • 用戶畫像

5,基礎設施層

基礎設施層主要提供系統主機,公共中間件和容器化得組件,核心包括:

  • 容器編排
  • 數據庫存儲介質
  • 消息隊列介質
  • 緩存介質
  • 倒排索引查詢介質

 

業務架構的設計原則:

A,將業務-平臺化

  • 業務平臺化,相互獨立
  • 基礎業務下沉,可複用

B,核心業務和非核心業務分離

C,隔離不同類型的業務

  • 交易平臺需保證高可用
  • 履約平臺需保證一致性
  • 秒殺平臺保證高併發

D,區分主流程和輔助流程

  • 主流程高可用
  • 輔助流程可異步化

四,應用架構

如下是電商整體應用架構設計:

業務中臺核心應用領域

用戶域

會員中心服務於用戶的消費全生命週期,爲用戶提供特定的權益和服務,企業可以通過會員中心進與用戶進行互動,培養用戶忠誠度。主要能力包括:

會員運營管理:會員註冊、個人信息維護、會員註銷、會員卡辦理等相關能力。

會員體系管理:會員體系的創建、積分規則、成長值規則、等級、權益等相關能力。

客戶服務管理:包括客戶的新增、導入、查詢等相關能力。

積分交易管理:包括積分獲取、覈銷、清零、凍結、兌換等相關能力。

商品域

商品中心提供管理商品核心數據的能力。圍繞商品構建商品關聯數據,諸如商品版本信息、商品品牌、商品屬性、商品類目等。主要能力有:

品牌、類目、屬性管理:包括對商品品牌的維護、查詢,前後端類目的維護,屬性及屬性組管理等相關能力。

產品數據管理:包括對產品模板的創建、編輯、查詢、禁用等相關能力。

商品數據管理:包括創建商品、修改商品、查詢商品等相關能力。

商品發佈管理:包括商品發佈、上下架(即時+定時)等相關能力。

供應鏈域

庫存中心提供倉庫、庫存、貨品、單據(入庫單/出庫單/盤點單/盤點盈虧單)、審覈(調撥/盤點),包裹、貨品運費、物流運輸、接入第三方物流公司的服務能力。主要能力包括:

倉庫管理:包括服務區、倉庫、倉位及其關聯管理等相關能力。

貨品管理:包括貨品進貨入庫、銷售出庫、調撥入庫、調撥出庫、調撥審覈等相關能力。

貨品盤點:包括盤點單生成、審覈、查詢等相關能力。

履約管理:包括庫存檢查、發貨單創建及查詢、包裹物流查詢、運費管理、物流狀態跟蹤等相關能力。

交易域

交易中心負責企業業務交易訂單的整體生命週期管理,包括加入購物車車→訂單生成→合併分拆→流轉→支付→發貨→退換貨→完成。所有電商業務的核心繫統都是圍繞交易訂單進行構建的。主要能力包括:

購物車管理:包括購物車商品添加、編輯、查詢、校驗等相關能力。

正向交易管理:包括交易訂單生成、發起支付交易訂單、商品發貨管理、上門自提及覈銷等相關能力。

逆向交易管理:包括商品換貨、退貨、退款等相關能力。

訂單數據管理:包括交易訂單數據、支付記錄、發貨記錄、換貨記錄、退款記錄等數據管理能力。

交易流程編排:支持交易流程節點的配置化,便於根據業務場景的不同設置與之匹配的流程。

支付域

支付中心給下游商戶輸出標準的支付服務,提供代付代收、財務對賬等服務。通過對接多個主流渠道,穩定輸出微信、支付寶、銀聯等支付能力。主要能力包括:

支付能力:包括創建支付訂單、接收渠道通知、渠道訂單查詢等基本支付能力。

支付路由:包括支付渠道管理、支付方式管理、支付商戶和應用開通管理等相關能力。

資金賬戶:包括資金賬戶管理、充值維護、提現等相關能力。

活動域

營銷中心提供商家的活動計劃、申報、審批、執行、覈銷的全鏈路管理,也提供了基本的促銷能力,如優惠券活動、滿減買贈等。主要能力包括:

活動模板管理:包括營銷活動的策略模板、規則配置、條件、動作模板等相關能力。

活動管理:包括具體活動的基本信息配置、人羣圈選、商品管理、觸發條件等相關能力。

優惠券管理:包括優惠券的發放、領取、查詢、使用覈銷等相關能力。

贈品管理:對於滿贈、買贈活動,提供贈品維護、查詢、啓用、禁用等相關能力。

商鋪域

店鋪中心提供企業店鋪主體管理、店鋪管理、類型管理、經營對象管理等能力以支持企業爲其商戶用戶提供線上門店,同時也支持商戶管理、店鋪會員、店鋪會員等級管理、店鋪裝修等。主要能力包括:

商戶管理:包括商戶單個、批量開通,商戶審覈,商戶基本信息維護等相關能力。

店鋪管理:包括店鋪開通、店鋪基本信息維護、店鋪審覈、店鋪會員等相關能力。

五,技術架構

技術架構設計規則如下:

A,服務無狀態

B,服務可複用

C,松耦合

  • 跨業務領域調用,儘可能異步解耦
  • 同步調用設置超時時間
  • 相對穩定的服務和邏輯易變的服務分離

D,服務可治理

E,基礎服務

 

六,數據架構

一個典型的數據架構如下:

設計常見的數據架構應遵循如下原則:

A,統一數據庫視圖,保證數據的及時性,一致性,準確性和完整性.

B,數據和應用分離

  • 應用系統只依賴邏輯數據庫
  • 應用系統不直接訪問其他應用的數據庫,而是通過接口進行訪問.

C,數據庫做讀寫分離

  • 將訪問量大的數據庫做讀寫分離
  • 將數據量大的數據庫做分庫分表
  • 按照業務維度進行數據庫拆分
  • 對重要的數據庫做冗餘備份

D,合理採用Nosql,進行關係型數據庫的補充.

  • Elasticsearch:偏向於檢索、查詢、數據分析,適用於OLAP( 數據分析,響應速度要求沒那麼高 )系統
  • Mongodb:偏向於大數據規模下的CRUD,適用於對事務要求不強的OLTP( 內存效率,實時性比較高 )系統。
  • Redis:k/v存儲,適合mysql數據容災.

七,技術架構的核心要素

高性能

高可用

高伸縮

高擴展

高安全

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章