概述
從組織架構到技術架構,當前各大電商系統基本趨於中台化。中台在2015由阿里提出,是一種企業架構而不是單純的技術層面,目前幾乎各大電商都進行着中台化的建設。
中台是對 ”共享“ 理念系統化的歸納和總結。
- 重復功能建設和維護帶來的重復投資
- 煙囪式建設造成系統壁壘,數據孤島
- 業務沉淀促進可持續發展
- 大中台小前台快速響應市場的需要
上層業務
即大中台,小前台的前台,電商中直面用戶的B2B,B2C等各個業務線。
業務中台
業務中台基於公共服務的沉淀,需要收斂一些基礎的業務服務,如商品、訂單、會員、庫存、財務、結算等等。
- 商品中心:商品、類目、sku、spu
- 交易中心:訂單、狀態流轉、條目、支付
- 營銷中心:促銷、優惠券、活動
- 會員中心:賬戶、基本信息、收發貨地址、商鋪商家信息
- 倉儲中心:倉庫、庫存
- 物流中心:發貨信息、自主物流或外部物流對接
數據中台
數據中台不是一個平台,也不是一個系統。數據倉庫、數據平台和數據中台是有區別的。
簡單的舉例:數據平台可以理解為數據庫,數據倉庫類比為報表,而數據中台更貼近上層業務,帶着業務屬性。
- 數據抽取:從db,nosql,日志等各個來源提供抽取接口
- 數據接口:為上層業務提供需要的定制化業務數據接口
- 數據分析:行業分析與決策、數據驅動運營
- 人工智能:用戶畫像、商品推薦
- 可視化:數據大屏、信息展示、活動報表
技術中台
與業務無關的基礎沉淀,中間件,系統框架,監控,日志,集成部署等等。
- 基礎架構:核心類庫、公共框架、基礎服務、服務治理框架
- 中間件:分布式緩存、分布式消息、數據存儲(db,nosql)、分布式文件、分布式調度
- 自動化運維:監控中心、資源管理、配置中心、發布中心、日志平台
- 自動化測試:任務協同、基礎測試、性能測試、接口測試、持續集成
運維中台
不一定存在,系統運維相關的內容,硬件,機房,包括企業雲平台的建設等可以划分為單獨的運維中台。
面臨挑戰
考量維度
(根據項目情況有所偏重,例如分布式與一致性是一對矛盾)
- 高性能:提供快速的訪問體驗。
- 高可用:網站服務7*24正常訪問。
- 可伸縮:硬件彈性增加/減少能力(快速擴容與釋放)。
- 擴展性:方便地增加/減少新的功能/模塊(迭代與服務降級)。
- 安全性:安全訪問和數據加密、安全存儲等策略。
- 敏捷性:快速應對突發情況的能力(災備等)。
內部瓶頸
- 木桶效應:水管最細的地方決定流量,水桶最低的地方決定容量(QPS壓測調優為例)
- CPU:序列化和反序列化、高頻日志輸出、大量反射、大量線程的應用
- 內存:使用內存的中間件或服務,如redis,memcache,jvm大量對象堆積內存的應用等
- 網絡帶寬:大流量高並發環境下,雙11用戶訪問量激增,造成網絡擁堵
- 磁盤IO:文件上傳下載,數據庫頻繁讀寫,不合理或大批量的日志輸出
- 數據庫連接數:應對雙11,應用服務器連接池大批擴容,警惕底層數據庫、Redis等連接數瓶頸
外部服務
- 短信:外部短信延遲與送達率問題,可以搭建短信平台,多家渠道做路由和切換分流
- 支付:銀行支付與回調延遲,搭建支付中心,對接多支付渠道
- 快遞對接:快遞服務對接
- 外部雲存儲:雲存儲文件訪問,流量擴容
- CDN:外部靜態文件訪問提速服務