發表於2024-11-27
√ 雲時代架構係列經典!重磅級架構書2018年重磅上市!
√ 詳解高可用架構設計的核心要點:可伸縮與可擴展
√ 詳解分布式發號器、消息隊列框架、數據庫分庫分錶、緩存、Elasticsearch、分布式調度任務、RPC服務、Dubbo、高性能網絡代理中間件等
√ 全麵破解可伸縮服務架構的奧秘
√ 分布式服務架構:原理、設計與實戰讀者的配套技能升級架構書。
《可伸縮服務架構:框架與中間件》以高可用服務架構為主題,側重於講解高可用架構設計的核心要點:可伸縮和可擴展,從應用層、數據庫、緩存、消息隊列、大數據查詢係統、分布式定時任務調度係統、微服務等層麵詳細講解如何設計可伸縮、可擴展的框架,並給齣在各個領域解決特定問題的方法論和實踐總結。隨著《可伸縮服務架構:框架與中間件》的齣版,我們還開源瞭4個行之有效的互聯網可伸縮框架,包括數據庫分庫分錶dbsplit、緩存分片redic、專業的發號器vesta和消息隊列處理機框架kclient,每個框架都開箱即用,也可以作為學習互聯網平颱化框架搭建的素材,更可以作為開發開源項目的示例。
《可伸縮服務架構:框架與中間件》的上冊《分布式服務架構:原理、設計與實戰》詳細介紹瞭如何解決綫上高並發服務的一緻性、高性能、高可用、敏捷等痛點,《可伸縮服務架構:框架與中間件》與上冊結閤後可覆蓋保證綫上高並發服務的各個主題:一緻性、高性能、高可用、可伸縮、可擴展、敏捷性等,每個主題都是一個方法論。充分理解這些主題,可保障綫上服務健壯運行,對實現服務穩定性的n個9有著不可估量的作用。
無論是對於互聯網的或者傳統的軟件工程師、測試工程師、架構師,還是對於深耕於IT的其他管理人員,《可伸縮服務架構:框架與中間件》都有很強的藉鑒性和參考價值,是值得每個技術人員閱讀的架構級技術書。
李艷鵬
“雲時代架構”技術社區創始人,著有《分布式服務架構:原理、設計與實戰》,現任某知名支付平颱架構組負責人,曾在花旗銀行、甲骨文、路透社、新浪微博等大型IT互聯網公司擔任技術負責人和架構師,現專注於大規模高並發的綫上和綫下支付平颱的應用架構和技術架構的規劃與落地,負責交易、支付、渠道、齣款、風控、對賬等核心支付係統的設計與實現,在移動支付、聚閤支付、閤規賬戶、掃碼支付、標記化支付等業務場景上有産品應用架構規劃與落地的實踐經驗。
楊彪
現任遊戲創業公司技術總監及閤夥人,“雲時代架構”技術社區閤夥創始人,CSDN達人課講師,著有《分布式服務架構:原理、設計與實戰》。在互聯網和遊戲行業有近十年工作經驗,曾在酷我音樂盒、人人遊戲和掌趣科技等上市公司擔任核心研發職位,在互聯網公司做過日活躍用戶量達韆萬的項目,也在遊戲公司做過多款月流水韆萬以上的遊戲。
李海亮
現任某互聯網公司搜索研發經理,有近十年互聯網公司的搜索及搜索相關的研發經驗
賈博岩
現任某支付公司高級開發工程師,專注於支付係統領域的開發,例如商戶入網、商戶對外齣款等業務。標準90後,喜歡鑽研技術,維護個人簡書博客“賈博岩”。
劉淏
現任某互聯網公司技術專傢,長期在外企從事技術經理和架構工作,對數據庫應用及搜索引擎應用有很深入的理解和實踐;有大型數據服務集群的架構調優及運維經驗;精通性能問題的解決與調優,以及高性能中間件的編寫。目前主要研究業務數據自動化框架及其實現。
如何實現可伸縮架構,是互聯網應用麵臨業務的高速發展時亟須解決的問題,而可伸縮性和高可用性往往是穩定性設計的基石。諸多國外優秀書籍都偏於講解實踐指導原則,讀者在麵臨具體場景時仍然難得其法。因此我在兩年前召集瞭幾位誌同道閤的朋友編寫瞭《深入分布式緩存》,期望能貫通從原理到實踐的內容。更可喜的是,艷鵬和楊彪諸君更進一步地呈現瞭滿滿都是案例及乾貨的《可伸縮服務架構:框架與中間件》,本書從分布式發號器、消息隊列框架、數據庫分庫分錶、緩存、Elasticsearch、分布式調度任務、RPC服務、Dubbo、高性能網絡代理中間件等方麵,全麵破解瞭可伸縮服務架構的奧秘,並與《分布式服務架構:原理、設計與實戰》相結閤,闡述瞭互聯網高可用、高性能、高並發、可伸縮、可擴展、敏捷性等核心要點,值得廣大從業人員閱讀。
螞蟻金服高級技術專傢 於君澤
分布式係統的設計是一門藝術,作者揮舞著六色畫筆譜寫瞭上下兩捲:《分布式服務架構:原理、設計與實戰》和《可伸縮服務架構:框架與中間件》,在這兩捲書裏,一緻性、高性能、高可用、可伸縮、可擴展、敏捷性等精彩內容皆信手拈來。我在多年前和楊彪相識,工作時一起調Bug,休閑時一起讀書,今又與艷鵬結識,如今他們已經成為技術的布道者。
在技術的道路上前行,冷暖自知,卻能收獲內心的平和。願這兩捲書能夠感召更多的朋友,共同享受技術的藝術,享受成長的富足。
BitTiger Co-CEO、北大博士 馮沁原
本書承接《分布式服務架構:原理、設計與實戰》一書的主綫,繼續深入講解分布式服務架構,對緩存、消息隊列、分庫分錶、定時調用係統、RPC框架等進行瞭落地與實戰講解,讀者可以通過本書實現分布式服務的高效落地。
暢銷書《億級流量網站架構核心技術》作者 開濤
在艷鵬和楊彪閤著的《分布式服務架構:原理、設計與實戰》中,我看到瞭分布式理論與實踐相結閤的全麵總結,又從本書中看到瞭非常實用的分庫分錶方案、緩存分片方案、消息隊列框架、發號器、RPC等互聯網架構的重要知識,並在一些內容上開源瞭公司內部屢試不爽的互聯網框架。通過閱讀本書,能夠更好地提升自己的技術能力,還能夠以這些框架為基礎搭建適閤自己公司業務的輕量級框架,輕而易舉地完成業務的功能需求和非功能質量需求。這是一本每個互聯網技術人員都應該通讀的優秀參考書籍。
開心網副總裁 楊延峰
本書以高可用服務架構為主綫,側重於講解高可用架構設計的核心要點:可伸縮和可擴展,從數據庫分片、緩存分片、消息隊列框架、大數據查詢係統、分布式定時任務調度係統、微服務RPC等層麵,詳細講解瞭如何設計可伸縮和可擴展的框架,可見作者對分布式係統的理解和實踐是深入骨髓的。希望每一位互聯網架構師、開發者、技術專傢、技術總監都通過本書獲取精華,並將其應用到項目實踐中,為項目的順利進行保駕護航。
螞蟻金服技術專傢 張義明
能講明白分布式架構並不容易,本書卻做到瞭。在本書中,不論是對需求場景的剖析,還是對可行方案的仔細研磨及實現,都體現瞭架構師的專業素養和精益求精。這是一本分布式服務架構方麵的好書。
皇包車CTO 賀偉
本書針對分布式服務架構中常用的緩存分片、數據庫分庫分錶、消息隊列、任務調度中間件、RPC、大數據查詢係統等技術提供瞭典型的設計和實現,對我們設計和實現自己的互聯網業務係統有重要的參考價值。
《程序員的成長課》作者 安曉輝
互聯網業務是爆發式的,其帶來的流量壓力和對計算能力的要求也是不均衡的,利用廉價的計算機構建分布式計算環境已成為當下的選擇。然而,可伸縮技術在帶來高優勢的同時,也帶來技術上的變革和挑戰。大傢可以從本書提供的分庫分錶、緩存分片、消息隊列框架、發號器等方案中吸取精髓,快速形成自己的認知,並在工作中積纍經驗和提升技能,以更好地為公司和團隊效力。
企辦信息技術有限公司CTO、雲像數字技術顧問 馬星光
隨著企業業務量的增加,流量洪峰在不斷挑戰著業務係統的承載能力,設計高並發、可伸縮的係統已成為軟件架構師的緊迫任務,而分布式、可伸縮的架構模式已成為抵禦洪峰的有效方案之一。本書匯集瞭作者在多年核心係統開發中的架構及實踐經驗,以理論與案例相結閤的方式展現瞭分布式係統設計、技術選型、可伸縮架構的設計、框架實現等方麵的優秀實踐。不管你是在從0到1構建係統,還是在尋找服務化治理的正確方嚮,本書都可以幫你解惑。
菜鳥網絡技術專傢 高春東
在《分布式服務架構:原理、設計與實戰》中,作者通過多年的互聯網架構經驗,總結瞭服務化的背景和技術演進,提齣瞭互聯網項目技術評審的方法論和提綱,並給齣瞭對真實的綫上項目進行性能和容量評估的全過程,可幫助大傢輕鬆地設計大規模、高並發的服務化係統,保證服務化項目按照既定的目標進行實施與落地,並保證係統的穩定性、可用性和高性能,等等。本書延續瞭《分布式服務架構:原理、設計與實戰》的主綫,繼續講解在分布式係統設計中非常重要的可伸縮架構設計模式,對數據庫分庫分錶、緩存分片、消息隊列處理框架、大數據查詢係統、分布式定時任務係統、微服務和RPC等均有詳細講解,並開源瞭4個開箱即用的框架級項目,大傢也可以以其為基礎,開發適閤自己的業務的分布式係統。
愛奇藝高級技術經理 黃福偉
在本書中,作者將理論與實踐相結閤,對分庫分錶、緩存、消息隊列、大數據查詢及分布式任務調度等的設計與使用進行瞭深入分析與講解。本書內容豐富,可作為開發利器,值得參考。
金山雲高級開發工程師 李雪冰
金融係統對高並發服務的一緻性、高性能及高可用有著強烈的訴求,艷鵬及他的寫作團隊都是一綫資深架構師,不僅有豐富的實踐經驗,還有深層次的理論基礎。本書對高可用架構進行瞭深入講解,使讀者能夠從體係化的角度認識和思考金融係統的本質,其中的方法論是經過實踐檢驗的,更能在工作中應對特定領域的局部問題。
某金控集團總監 王誌成
我和本書作者楊彪在多年前相識於工作中,他的踏實、認真給我留下瞭深刻的印象,後來因為《分布式服務架構:原理、設計與實戰》,我又認識瞭艷鵬,他們的勤奮和刻苦讓我非常佩服,也讓我非常期待他們的新書。讀書如讀人,本書不僅展現瞭可伸縮架構的技術,更展現瞭作者孜孜不倦的精神。希望讀者不僅能從書中學到互聯網分布式架構的知識,更能學到不畏艱辛、知難而上的精神。
北大博士 賈濤
第1章 如何設計一款永不重復的高性能分布式發號器 1
1.1 可選方案及技術選型 2
1.1.1 為什麼不用UUID 2
1.1.2 基於數據庫的實現方案 2
1.1.3 Snowflake開源項目 3
1.1.4 小結 4
1.2 分布式係統對發號器的基本需求 4
1.3 架構設計與核心要點 6
1.3.1 發布模式 6
1.3.2 ID類型 7
1.3.3 數據結構 7
1.3.4 並發 9
1.3.5 機器ID的分配 9
1.3.6 時間同步 10
1.3.7 設計驗證 11
1.4 如何根據設計實現多場景的發號器 11
1.4.1 項目結構 12
1.4.2 服務接口的定義 14
1.4.3 服務接口的實現 15
1.4.4 ID元數據與長整型ID的互相轉換 22
1.4.5 時間操作 25
1.4.6 機器ID的生成 27
1.4.7 小結 32
1.5 如何保證性能需求 32
1.5.1 嵌入發布模式的壓測結果 33
1.5.2 中心服務器發布模式的壓測結果 33
1.5.3 REST發布模式(Netty實現)的壓測結果 33
1.5.4 REST發布模式(Spring Boot + Tomcat實現)的壓測結果 34
1.5.5 性能測試總結 34
1.6 如何讓用戶快速使用 35
1.6.1 REST發布模式的使用指南 35
1.6.2 服務化模式的使用指南 38
1.6.3 嵌入發布模式的使用指南 41
1.7 為用戶提供API文檔 43
1.7.1 RESTful API文檔 44
1.7.2 Java API文檔 45
第2章 可靈活擴展的消息隊列框架的設計與實現 49
2.1 背景介紹 50
2.2 項目目標 50
2.2.1 簡單易用 50
2.2.2 高性能 51
2.2.3 高穩定性 51
2.3 架構難點 51
2.3.1 綫程模型 51
2.3.2 異常處理 53
2.3.3 優雅關機 53
2.4 設計與實現 54
2.4.1 項目結構 54
2.4.2 項目包的規劃 55
2.4.3 生産者的設計與實現 57
2.4.4 消費者的設計與實現 58
2.4.5 啓動模塊的設計與實現 67
2.4.6 消息處理器的體係結構 76
2.4.7 反射機製 79
2.4.8 模闆項目的設計 80
2.5 使用指南 82
2.5.1 安裝步驟 82
2.5.2 Java API 83
2.5.3 與Spring環境集成 84
2.5.4 對服務源碼進行注解 85
2.6 API簡介 87
2.6.1 Producer API 87
2.6.2 Consumer API 88
2.6.3 消息處理器 88
2.6.4 消息處理器定義的注解 90
2.7 消息處理機模闆項目 91
2.7.1 快速開發嚮導 91
2.7.2 後颱監控和管理 92
第3章 輕量級的數據庫分庫分錶架構與框架 93
3.1 什麼是分庫分錶 94
3.1.1 使用數據庫的三個階段 94
3.1.2 在什麼情況下需要分庫分錶 95
3.1.3 分庫分錶的典型實例 96
3.2 三種分而治之的解決方案 97
3.2.1 客戶端分片 97
3.2.2 代理分片 100
3.2.3 支持事務的分布式數據庫 101
3.3 分庫分錶的架構設計 102
3.3.1 整體的切分方式 102
3.3.2 水平切分方式的路由過程和分片維度 106
3.3.3 分片後的事務處理機製 107
3.3.4 讀寫分離 119
3.3.5 分庫分錶引起的問題 119
3.4 流行代理分片框架Mycat的初體驗 123
3.4.1 安裝Mycat 123
3.4.2 配置Mycat 124
3.4.3 配置數據庫節點 128
3.4.4 數據遷移 129
3.4.5 Mycat支持的分片規則 129
3.5 流行的客戶端分片框架Sharding JDBC的初體驗 138
3.5.1 Sharding JDBC簡介 138
3.5.2 Sharding JDBC的功能 139
3.5.3 Sharding JDBC的使用 141
3.5.4 Sharding JDBC的使用限製 152
3.6 自研客戶端分片框架dbsplit的設計、實現與使用 153
3.6.1 項目結構 154
3.6.2 包結構和執行流程 155
3.6.3 切片下標命名策略 159
3.6.4 SQL解析和組裝 167
3.6.5 SQL實用程序 168
3.6.6 反射實用程序 173
3.6.7 分片規則的配置 177
3.6.8 支持分片的SplitJdbcTemplate和SimpleSplitJdbcTemplate接口API 179
3.6.9 JdbcTemplate的擴展SimpleJdbcTemplate接口API 184
3.6.10 用於創建分庫分錶數據庫的腳本工具 187
3.6.11 使用dbsplit的一個簡單示例 192
3.6.12 使用dbsplit的綫上真實示例展示 199
第4章 緩存的本質和緩存使用的優秀實踐 201
4.1 使用緩存的目的和問題 202
4.2 自相似,CPU的緩存和係統架構的緩存 203
4.2.1 CPU緩存的架構及性能 205
4.2.2 CPU緩存的運行過程分析 206
4.2.3 緩存行與僞共享 208
4.2.4 從CPU的體係架構到分布式的緩存架構 218
4.3 常用的分布式緩存解決方案 221
4.3.1 常用的分布式緩存的對比 221
4.3.2 Redis初體驗 225
4.4 分布式緩存的通用方法 229
4.4.1 緩存編程的具體方法 229
4.4.2 應用層訪問緩存的模式 233
4.4.3 分布式緩存分片的三種模式 235
4.4.4 分布式緩存的遷移方案 238
4.4.5 緩存穿透、緩存並發和緩存雪崩 244
4.4.6 緩存對事務的支持 246
4.5 分布式緩存的設計與案例 248
4.5.1 緩存設計的核心要素 248
4.5.2 緩存設計的優秀實踐 250
4.5.3 關於常見的緩存綫上問題的案例 253
4.6 客戶端緩存分片框架redic的設計與實現 257
4.6.1 什麼時候需要redic 258
4.6.2 如何使用redic 258
4.6.3 更多的配置 258
4.6.4 項目結構 260
4.6.5 包結構 261
4.6.6 設計與實現的過程 261
第5章 大數據利器之Elasticsearch 268
5.1 Lucene簡介 269
5.1.1 核心模塊 269
5.1.2 核心術語 270
5.1.3 檢索方式 271
5.1.4 分段存儲 273
5.1.5 段閤並策略 275
5.1.6 Lucene相似度打分 278
5.2 Elasticsearch簡介 286
5.2.1 核心概念 286
5.2.2 3C和腦裂 289
5.2.3 事務日誌 291
5.2.4 在集群中寫索引 294
5.2.5 集群中的查詢流程 295
5.3 Elasticsearch實戰 298
5.3.1 Elasticsearch的配置說明 298
5.3.2 常用的接口 300
5.4 性能調優 305
5.4.1 寫優化 305
5.4.2 讀優化 308
5.4.3 堆大小的設置 313
5.4.4 服務器配置的選擇 315
5.4.5 硬盤的選擇和設置 316
5.4.6 接入方式 318
5.4.7 角色隔離和腦裂 319
第6章 全麵揭秘分布式定時任務 321
6.1 什麼是定時任務 322
6.2 分布式定時任務 341
6.2.1 定時任務的使用場景 342
6.2.2 傳統定時任務存在的問題 342
6.2.3 分布式定時任務及其原理 344
6.3 開源分布式定時任務的用法 347
6.3.1 Quar
可伸縮服務架構:框架與中間件 下載 mobi epub pdf txt 電子書 格式
可伸縮服務架構:框架與中間件 下載 mobi pdf epub txt 電子書 格式 2024
可伸縮服務架構:框架與中間件 下載 mobi epub pdf 電子書送貨快,晚上下單第二天就送貨上門瞭,質量不錯,還帶薄膜包裝哦
評分寶貝收到瞭,京東自營的挺好的,不錯不錯好評!!!!
評分學習使人進步
評分朋友推薦,書還沒讀,相信不會讓你失望!
評分寶貝收到瞭,京東自營的挺好的,不錯不錯好評!!!!
評分非常實惠,用瞭199-100得優惠券值得擁有
評分信任京東商城裏麵的商品,快遞服務也是一直做的很棒!
評分配送快,是正品,配送員服務贊。
評分不錯的書,可以一看
可伸縮服務架構:框架與中間件 mobi epub pdf txt 電子書 格式下載 2024