幫助中心 | 我的帳號 | 關於我們

超大流量分散式系統架構解決方案(人人都是架構師2.0)

  • 作者:高翔龍|責編:孫學瑛
  • 出版社:電子工業
  • ISBN:9787121385056
  • 出版日期:2020/04/01
  • 裝幀:平裝
  • 頁數:223
人民幣:RMB 89 元      售價:
放入購物車
加入收藏夾

內容大鋼
    本書共5章,每一章的內容幾乎都是獨立的,大家完全可以有選擇性地閱讀。第1章以大規模服務化架構作為全書的開篇,主要介紹了分散式系統架構的演變過程,以及在大規模服務調用場景下,如何實施服務治理。第2章重點介紹了在大促前夕,如何在線上實施全鏈路壓測,以及有指導性地進行容量規劃和性能優化,讓系統堅如磐石。第3章重點介紹了如何有效地對流量實施管制,若採用合理且有效的方式管制住峰值流量,使其井然有序地對系統進行訪問,則在任何情況下,系統就都能穩定運行。第4章重點介紹了在大促搶購的場景下,如何解決高併發讀和高併發寫等核心技術難題。第5章詳細地介紹了關係型資料庫的架構演變過程,還重點介紹了在實際的訂單業務場景下,如何保證數據的最終一致性。
    本書盡量通俗易懂、深入淺出地闡述每個知識點,並且結合實際的業務場景引入了大量的真實案例,其中的解決方案可直接應用於實際工作中。本書適合對超大流量分散式系統架構感興趣的所有架構師、開發人員,以及運維人員參考閱讀。

作者介紹
高翔龍|責編:孫學瑛
    高翔龍,杭州雲集微店架構師,基礎架構組負責人,負責基礎技術平台的架構設計和中間件研發等工作,技術書籍《Java虛擬機精講》作者,熱衷於開源技術,常年遊走在Github上。

目錄
第1章  大系統小做——大規模服務化架構
  1.1  分散式系統的架構演變過程
    1.1.1  單機架構
    1.1.2  集群架構
    1.1.3  垂直拆分業務子系統
    1.1.4  服務化架構演進
    1.1.5  服務化與微服務架構的區別
    1.1.6  集群與分散式的區別
    1.1.7  前後端分離架構演進
    1.1.8  API網關服務
    1.1.9  分散式多活數據中心架構演進
  1.2  服務治理需求
    1.2.1  服務化與RPC協議
    1.2.2  基於服務治理框架Dubbo實現服務化
    1.2.3  警惕因超時和重試引起的系統雪崩
    1.2.4  為什麼需要實施服務治理
    1.2.5  關於服務化后的分散式事務問題
    1.2.6  註冊中心性能瓶頸方案
    1.2.7  分散式多活架構下的服務就近調用方案
  1.3  服務治理之調用鏈
    1.3.1  Google的Dapper論文簡介
    1.3.2  調用鏈的實現方案
    1.3.3  基於非侵入式運行期AOP方案實現數據採集上報
    1.3.4  調配採樣率
  1.4  本章小結
第2章  大促備戰核彈——全鏈路壓測
  2.1  為什麼要在線上實施全鏈路壓測
  2.2  業務系統如何區分壓測流量
    2.2.1  壓測流量打標方案
    2.2.2  在鏈路上下文信息中傳遞壓測標記
    2.2.3  外部第三方介面走Mock
    2.2.4  壓測數據的隔離方案
  2.3  如何發起大規模的壓測流量
    2.3.1  數據構造平台
    2.3.2  自研全鏈路壓測軍演系統的一些經驗分享
  2.4  本章小結
第3章  削峰填谷——流控方案
  3.1  為什麼需要限流
  3.2  限流方案
    3.2.1  常見的限流演算法
    3.2.2  基於Guava實現平均速率限流
    3.2.3  接入層限流方案
    3.2.4  應用層限流——限時搶購限流方案
  3.3  基於時間分片的削峰方案
    3.3.1  活動分時段進行實現削峰
    3.3.2  通過答題驗證實現削峰
  3.4  基於消息隊列的解耦、削峰、最終一致性方案
    3.4.1  基於消息隊列實現解耦
    3.4.2  常見消息中間件的使用
    3.4.3  基於消息隊列的一些典型案例

  3.5  本章小結
第4章  大促搶購核心技術難題??讀/寫優化方案
  4.1  緩存技術簡介
    4.1.1  本地緩存
    4.1.2  本地緩存的痛點
    4.1.3  神秘的off-heap技術
  4.2  高性能分散式緩存Redis
    4.2.1  基於Jedis客戶端操作Redis
    4.2.2  基於RedisCluster模式實現Sharding
  4.3  同一熱賣商品高併發讀難題
    4.3.1  多級緩存方案
    4.3.2  緩存穿透思考
    4.3.3  RedisCluster模式下的讀/寫分離方案
  4.4  同一熱賣商品高併發寫難題
    4.4.1  InnoDB引擎的行鎖問題
    4.4.2  基於Redis樂觀鎖的庫存扣減方案
    4.4.3  嵌入Lua腳本的庫存扣減方案
    4.4.4  基於AliSQL資料庫提升併發寫性能
  4.5  本章小結
第5章  星羅棋布??分庫分表方案
  5.1  關係資料庫的架構演變
    5.1.1  資料庫讀/寫分離
    5.1.2  資料庫垂直分庫
    5.1.3  資料庫水平分庫與水平分表
    5.1.4  MySQL Sharding與MySQL Cluster的區別
  5.2  Sharding中間件
    5.2.1  常見的Sharding中間件對比
    5.2.2  Shark簡介
    5.2.3  Shark的架構模型
    5.2.4  使用Shark實現分庫分表后的數據路由任務
    5.2.5  分庫分表后所帶來的影響
    5.2.6  全局唯一SequenceID解決方案
    5.2.7  基於Solr滿足多維度的複雜條件查詢
    5.2.8  關於分散式事務
  5.3  資料庫的HA方案
    5.3.1  基於配置中心實現主備切換
    5.3.2  基於Keepalived實現主備切換
    5.3.3  保障主備切換過程中的數據一致性
  5.4  訂單業務冗余表需求
    5.4.1  冗余表的實現方案
    5.4.2  數據最終一致性方案
  5.5  本章小結
附錄
後記

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032