序
為了滿足各種不同類型應用的需求,Java 開發工程師需要熟練掌握多種技術。這些技術涉及的技術堆疊較多,需要花費大量的時間和精力進行深入學習和應用。開發人員需要具備極大的耐心和毅力來克服這些技術學習和應用中存在的挑戰。然而,其中一些技術的通用性並不高,各家公司使用的技術方案也不盡相同,這導致開發人員深入研究一門技術後,發現在其他公司可能並不適用,因此需要重新學習和研究其他技術。
透過市場調研,筆者發現Spring Cloud Alibaba Nacos、Dubbo、ZooKeeper、Spring Cloud Security OAuth 2、Spring Cloud Gateway、Spring Cloud Skywalking、Spring Cloud Alibaba Sentinel、Apache ShardingSphere、Elasticsearch+Logstash+Kibana 和RocketMQ 等技術具有流通性和通用性。這些技術在開放原始碼社區中已趨成熟並得到廣泛使用,擁有較大的開發者社區和使用者基礎。同時,這些技術在相應領域內具有完整的功能,能夠滿足開發者在專案中的多種需求。這些技術在長期的實踐和最佳化過程中,已經得到廣泛驗證,因此具有較高的可靠性和穩定性。此外,這些技術都提供了友善的文件和範例,易於開發者快速上手和使用。
本書的目的在於深入底層,了解技術的實現原理、使用方法和應用場景,幫助讀者更進一步地理解技術的實際應用。本書透過豐富的案例、故事情節和實戰經驗等,將諸多通用性較高的技術進行深入講解。透過撰寫本書,筆者查閱了大量資料,擴大了自身的知識系統,並從中獲得了很多有益的收穫。
本書主要內容
第1 章介紹Nacos 的動態發現、健康檢查、設定管理、技術選型、分散式事務、與Eureka 的區別、底層實現原理和實戰應用。
第2 章介紹Dubbo 的基本概念、整合、設定、註冊中心、偵錯和監控、擴充、原理、性能最佳化及序列化協定、手寫Dubbo 框架。
第3 章介紹ZooKeeper 的結構、特性、資料模型、API、應用場景、工作原理、監控和管理。
第4 章介紹Spring Cloud Security OAuth 2 的授權模式、底層工作原理及JWT 技術。
第5 章介紹Spring Cloud Gateway 路由與更新、負載平衡策略、篩檢程式、限流方式、底層工作原理、高併發下的問題及解決方案。
第6 章介紹分散式鏈路追蹤的背景和概念、Skywalking 的安裝設定、資料獲取的方式和邏輯、呼叫堆疊分析和故障排除。
第7 章介紹流量控制元件對比介紹、限流/ 熔斷/ 降級、動態規則/ 服務治理、流量控制方式、核心元件、Sentinel 的4 種規則,持久化推送模式。
第8 章介紹Apache ShardingSphere 同類產品對比、分片策略、資料遮罩、分散式事務、資料庫讀寫分離、資料庫主從同步、資料庫叢集管理、跨資料庫分頁、垂直拆分和水平拆分、廣播資料表與綁定資料表及底層實現原理。
第9 章介紹Elasticsearch+Logstash+Kibana 的安裝與設定,以及底層實現原理。
第10 章介紹RocketMQ 的安裝、設定、架構、基本原理及相關的高可用性、容錯性、性能調優、監控方法。
閱讀建議
本書是一本綜合性書籍,涵蓋了基礎、進階和實戰應用的內容。書中既包含深入的底層基礎知識,也有生動的故事情節和案例分析,同時提供了詳細的程式範例。本書對技術描述非常詳細,還提供了適合入門讀者的程式註釋,幫助讀者理解內容並提升信心,輕鬆掌握底層工作原理並快速進入實戰。
閱讀前,快速瀏覽目錄和章節概覽可幫助了解書籍結構、內容和重點。了解自己希望從中獲得什麼樣的知識或經驗可以指導閱讀和吸收資訊。建議在閱讀時做筆記、思考問題、自我提問,以加深理解和吸收知識。閱讀結束後,反思和總結所學內容,並嘗試應用到現實生活中,有助深化理解和應用知識。與朋友或同事分享所讀內容,討論細節並獲得回饋,也有助加深對知識的理解和吸收。
致謝
本書的完成離不開許多人的幫助和支援。在此,我要向那些給予我幫助的人們表示真摯的感謝。
衷心感謝讀者對本書的支援和關注,同時歡迎對本書提出建議和意見,筆者會認真聽取並持續改進。
廖志偉