Product Information
ISBN: 9789860776904
出版日期: 2022-03-18
作者: 梁國斌
裝訂: 平裝.單色印刷.544頁.23.
用超高速C語言解析Unix下Redis程式及完整執行過程
一次精通Redis、UNIX程式設計、分散式系統、儲存系統
▍本書主要內容
本書深入分析了Redis的實現原理,所以並不是Redis的入門書。為了儘量降低閱讀難度,本書複習了Redis各個核心功能的實現原理,提取了Redis核心程式(本書會儘量避免堆積程式),並以適量圖文,對Redis原始程式及其實現原理進行詳細分析,介紹Redis核心功能的設計思想和實現流程。
雖然本書的大部分內容是對Redis原始程式的分析,但是並不複雜,即使讀者只是簡單了解C語言的基礎語法,也可以輕鬆讀懂。
另外,本書結合Redis目前的最新版本6,分析了Redis最新特性,如Redis 6的ACL、Tracking等機制。為了照顧對Redis最新特性不熟悉的讀者,這部分內容提供了詳細的應用範例,幫助讀者循序漸進、由淺到深地學習和了解Redis最新特性。
本書也不侷限於Redis,而是由Redis延展出了兩方面內容:
(1)Redis中使用的UNIX機制,包括UNIX網路程式設計、執行緒同步等內容,本書會透過原始程式展示Redis如何使用這些UNIX機制。
(2)如何透過Redis實現一個分散式系統,主要是Sentinel、Cluster機制的實現原理。
本書使用的原始程式版本是Redis 6,本書提供的Redis操作案例,如無特殊說明,也是在Redis 6版本上執行的操作實例。
本書特色
.分析Redis的字串、清單、雜湊、集合這幾種資料類型的編碼格式。
.介紹Redis事件機制與命令執行過程。
.利用I/O重複使用模型,實現事件循環機制。
.說明Redis持久化與複製機制。
.檔案持久化、從節點複製,透過將資料複製到不同備份中,從而保持資料安全。
.使用RDB、AOF持久化機制,以及主從節點複製流程等。
.Redis分散式架構,從流行的分散式演算法Raft出發,分析Sentinel監控節點,Cluster叢集實現資料分片,支援動態新增、刪除叢集節點,以及容錯移轉。
.說明Redis中的進階特性,包括Redis交易、非阻塞刪除、ACL存取控制清單、Tracking機制、Lua指令稿、Module模組、Stream訊息流等內容。
作者簡介
梁國斌
作者簡介
梁國斌
多年軟體設計與開發經驗。Redis長期使用者,熟悉Redis的核心原理與實現方式。公眾號(binecy)的維護者,主要分享各類軟體和框架的原始碼分析。
Shipping Information
Zone | Order Total (RM) | Delivery Fee (RM) |
---|---|---|
West Malaysia | Flat Rate | 6.00 |
Zone | Items/Weight | Delivery Fee (RM) |
---|---|---|
East Malaysia | First 1.00 kg | 13.00 |
Extra 1.00 kg | 5.00 | |
Singapore | First 1.00 kg | 25.00 |
Extra 1.00 kg | 5.00 | |
Australia, New Zealand | First 1.00 kg | 159.77 |
Extra 0.50 kg | 52.65 | |
Austria, Denmark, Finland, Ireland, Switzerland, Russia | First 1.00 kg | 157.78 |
Extra 0.50 kg | 34.31 | |
Brunei, Cambodia, Laos, Mongolia | First 1.00 kg | 175.10 |
Extra 0.50 kg | 87.14 | |
Belgium,France, Germany, Netherlands, Spain, U.K | First 1.00 kg | 150.94 |
Extra 0.50 kg | 30.46 | |
China | First 1.00 kg | 96.44 |
Extra 0.50 kg | 25.35 | |
Bangladesh, Brazil, Iraq, Pakistan, Qatar, S.Arabia, UAE, Sri Lanka | First 1.00 kg | 118.52 |
Extra 0.50 kg | 24.96 | |
South Africa | First 1.00 kg | 118.52 |
Extra 0.50 kg | 24.96 | |
Philippines | First 1.00 kg | 91.42 |
Extra 0.50 kg | 15.29 | |
Canada, United States, Mexico | First 1.00 kg | 162.58 |
Extra 0.50 kg | 35.90 | |
Hong Kong | First 1.00 kg | 80.63 |
Extra 0.50 kg | 29.06 | |
India | First 1.00 kg | 113.30 |
Extra 0.50 kg | 22.28 | |
Indonesia | First 1.00 kg | 107.35 |
Extra 0.50 kg | 24.87 | |
Japan | First 1.00 kg | 112.97 |
Extra 0.50 kg | 35.03 | |
Macau | First 1.00 kg | 92.93 |
Extra 0.50 kg | 13.82 | |
Singapore | First 1.00 kg | 74.75 |
Extra 0.50 kg | 21.49 | |
Taiwan | First 1.00 kg | 94.42 |
Extra 0.50 kg | 34.76 | |
Thailand | First 1.00 kg | 94.10 |
Extra 0.50 kg | 28.25 | |
Vietnam | First 1.00 kg | 98.94 |
Extra 0.50 kg | 14.34 |