CQRS
The CQRS pattern and event sourcing are not mere simplistic solutions to the problems associated with large-scale, distributed systems.
- 每次修改操作耗時200ms,每秒5個操作
- MySQL連接數在5K,分10個庫
- 5 *5k *10=25萬TPS
- 1000萬/25萬=40s
在秒殺場景中,由於對樂觀鎖/悲觀鎖的使用,推測系統響應時間更復雜。
使用Actor解決高並發的性能問題
1000萬用戶,一個用戶一個Actor,1000萬個內存對象。
200萬件SKU,一件SKU一個Actor,200萬個內存對象。
平均一個SKU承擔1000萬/200萬=5個請求
1000萬對數據庫的讀寫壓力變成了200萬
1000萬的讀寫是同步的,200萬的數據庫壓力是異步的
異步落盤時可以采用批量操作
總結:
由於1000萬+用戶的請求根據購物意願分散到200萬個商品SKU上:每個內存領域對象都強制串行執行用戶請求,避免了競爭爭搶;內存領域對象上扣庫存操作處理時間極快,基本沒可能出現請求阻塞情況;
從架構層面徹底解決高並發爭搶的性能問題。理論模型,TPS>100萬+……
EventSourcing:內存對象高可用保障
Actor是分布式存在的內存狀態及單線程計算單元,采用EventSourcing只記錄狀態變化引發的事件,事件落盤時只有Add操作,上述設計中很依賴Actor中State,事件溯源提高性能的同時,可以用來保證內存數據的高可用。
------------------------------------------------------------------
今天先到這兒,希望對您技術領導力, 企業管理,系統架構設計與評估,團隊管理, 項目管理, 產品管理,團隊建設 有參考作用 , 您可能感興趣的文章:
前端性能核對表Checklist-2018
大型電商互聯網性能優化案例
國際化環境下系統架構演化
微服務架構設計
視頻直播平台的系統架構演化
微服務與Docker介紹
Docker與CI持續集成/CD
互聯網電商購物車架構演變案例
互聯網業務場景下消息隊列架構
互聯網高效研發團隊管理演進之一
消息系統架構設計演進
互聯網電商搜索架構演化之一
企業信息化與軟件工程的迷思
企業項目化管理介紹
軟件項目成功之要素
人際溝通風格介紹一
精益IT組織與分享式領導
學習型組織與企業
企業創新文化與等級觀念
組織目標與個人目標
初創公司人才招聘與管理
人才公司環境與企業文化
企業文化、團隊文化與知識共享
高效能的團隊建設
項目管理溝通計划
構建高效的研發與自動化運維
某大型電商雲平台實踐
互聯網數據庫架構設計思路
IT基礎架構規划方案一(網絡系統規划)
餐飲行業解決方案之客戶分析流程
餐飲行業解決方案之采購戰略制定與實施流程
餐飲行業解決方案之業務設計流程
供應鏈需求調研CheckList
企業應用之性能實時度量系統演變
如有想了解更多軟件設計與架構, 系統IT,企業信息化, 團隊管理 資訊,請關注我的微信訂閱號:
作者:Petter Liu
出處:http://www.cnblogs.com/wintersun/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。 該文章也同時發布在我的獨立博客中-Petter Liu Blog。