Spring Cloud 集微服務框架之大成
本書從時下流行的微服務架構概念出發,結合Spring Cloud 的解決方案,深入淺出地剖析其在建置微服務架構中所需的各個基礎設施和技術要點,包含服務治理、容錯保護、API 閘道、設定管理、訊息匯流排等。作者不僅對如何使用各個元件做詳細介紹,還從原理上做很多分析,可以幫助讀者更進一步地了解Spring Cloud 的執行原理,這有助讀者在實戰中有效地校正和做進一步擴充。
Spring Cloud 的誕生對於沒有足夠資金投入或技術儲備實力的技術團隊是一種福音。利用Spring Cloud 的整合式解決方案,可以很輕鬆地架設起微服務架構的軟體系統,大幅減少開發成本,從容應對業務的快速發展。
本書是第一本以Spring Cloud 為技術藍本的微服務類別實戰書,不僅結合實際案例介紹Spring Cloud 的使用,還從原始程式的角度深入分析原理實現,強烈推薦每一位開發者和架構師收藏和學習。
適用:對Spring Cloud 有興趣或計畫使用Spring Cloud 的技術人員。
作者序
前言
「微服務」架構在這幾年被廣泛傳播,變得非常火熱,以至於關於微服務架構相關的開放原始碼架構和工具都變得越來越活躍,例如:Netflix OSS、Dubbo、Apache Thrift 等。Spring Cloud 也因為Spring 社區在企業應用領域的廣泛知名度和強大影響力,受到了廣大架構師與開發者的高度關注。
從接觸Spring Cloud 開始,我除了被其龐大的專案結構震撼之外,還被其所要完成的遠大目標所吸引。該專案不同於其他Spring 的優秀專案,它不再是一個基礎架構類別,而是一個更高層次的、架構角度的綜合性大型專案,其目標旨在建置一套標準化的微服務解決方案,讓架構師、開發者在使用微服務理念建置應用系統的時候,面對各個環節的問題都可以找到對應的元件來處理。參考網友戲稱的比喻:Spring Cloud 可以說是Spring 社區為微服務架構提供的「全家桶」套餐。由於「套餐」中的元件透過一個社區進行包裝與整合,使得「套餐」中各個元件之間的配合變得更加和諧,這可以有效減少我們在元件的選型和整合上花費的精力,所以它可以幫助我們快速建置起基礎的微服務架構系統。
雖然,Spring Cloud 提供了很多我們期待的內容,但是因其涵蓋的內容非常廣泛,並且知識跨度較大,因此對很多初學者來說就像被專業名詞轟炸了一樣,入門的難度也就大幅加強了。同時,中文文件與資料的匱乏,以及官方文件的內容對於使用描述並不夠細緻等問題,也直接提升了使用者的學習門檻。這些看似都不是什麼大問題,但是卻在某種程度上阻礙了Spring Cloud 在在中文社區的推廣與發展,畢竟任何一項優秀技術都需要有大批的實作者才能獲得不斷最佳化、增強和發揚光大。作為一名Spring 社區的忠實粉絲和長期實作者,自然希望可以有更多的開發者可以參與到Spring Cloud 的使用和貢獻中來,筆者也就萌生了想要撰寫一些入門文章的念頭,一方面對本身知識的掌握做一些整理,另一方面也希望這些內容可以成為後來者的學習資料。於是就開始堅持著寫了一些基礎的入門文章和範例,沒有想到會受到不少Spring 同好的持續關注,在建立相關的QQ 交流群之後,短短一個月的時間,交流群的人數就突破1000 人。由於在交流過程中發現很多問題重複出現,而這些問題並沒有獲得很好的整理,也沒有辦法被搜尋引擎收錄,於是就建立了Spring Cloud 中文社區討論區,以幫助收集交流過程中提出和解決的各種問題,方便將來學習者可以搜索到這些前人踩過的足跡。
之後,有幸在電子工業出版社電腦出版分社的張春雨先生的邀請下,開始撰寫這本關於Spring Cloud 的入門書籍。在這本書的撰寫期間,由於工作、家庭等因素,使得與大家交流的時間變得越來越少,但好在有諸多網友和熱心同好幫忙一起維護著交流群與討論區,為大家提供很多寶貴的學習資源,我也從中獲得了不少啟發和收穫。同時,感謝後來建議並帶頭整合目前在中文社區Spring Cloud 學習資源的許進,他在此期間承擔很多溝通和網站維護工作,為Spring Cloud 在中文社區付出了不少精力,後續我也會重新加入進來,繼續撰寫線上免費入門教學,以幫助更多的同好快速入門Spring Cloud。我們也歡迎更多的同好參與進來,一起為社區貢獻力量,以幫助Spring Cloud 在中文社區被更進一步地應用與成長。
前言
「微服務」架構在這幾年被廣泛傳播,變得非常火熱,以至於關於微服務架構相關的開放原始碼架構和工具都變得越來越活躍,例如:Netflix OSS、Dubbo、Apache Thrift 等。Spring Cloud 也因為Spring 社區在企業應用領域的廣泛知名度和強大影響力,受到了廣大架構師與開發者的高度關注。
從接觸Spring Cloud 開始,我除了被其龐大的專案結構震撼之外,還被其所要完成的遠大目標所吸引。該專案不同於其他Spring 的優秀專案,它不再是一個基礎架構類別,而是一個更高層次的、架構角度的綜合性大型專案,其目標旨在建置一套標準化的微服...
目錄
前言
01 基礎知識
1.1 什麼是微服務架構
1.2 為什麼選擇Spring Cloud
1.3 Spring Cloud 簡介
1.4 版本說明
02 微服務建置:Spring Boot
2.1 架構簡介
2.2 快速入門
2.3 設定詳解
2.4 監控與管理
2.5 小結
03 服務治理:Spring Cloud Eureka
3.1 服務治理
3.2 Eureka 詳解
3.3 設定詳解
3.4 跨平台支援
04 用戶端負載平衡:Spring Cloud Ribbon
4.1 用戶端負載平衡
4.2 RestTemplate 詳解
4.3 原始程式分析
4.4 設定詳解
4.5 重試機制
05 服務容錯保護:Spring Cloud Hystrix
5.1 快速入門
5.2 原理分析
5.3 使用詳解
5.4 屬性詳解
5.5 Hystrix 儀表板
5.6 Turbine 叢集監控
06 宣告式服務呼叫:Spring Cloud Feign
6.1 快速入門
6.2 參數綁定
6.3 繼承特性
6.4 Ribbon 設定
6.5 Hystrix 設定
6.6 其他設定
07 API 閘道服務:Spring Cloud Zuul
7.1 快速入門
7.2 路由詳解
7.3 篩檢程式詳解
7.4 動態載入
08 分散式設定中心:Spring Cloud Config
8.1 快速入門
8.2 服務端詳解
8.3 用戶端詳解
09 訊息匯流排:Spring Cloud Bus
9.1 訊息代理
9.2 RabbitMQ 實現訊息匯流排
9.3 Kafka 實現訊息匯流排
9.4 深入了解
10 訊息驅動的微服務:Spring Cloud Stream
10.1 快速入門
10.2 核心概念
10.3 使用詳解
10.4 綁定器詳解
10.5 設定詳解
11 分散式服務追蹤:Spring Cloud Sleuth
11.1 快速入門
11.2 追蹤原理
11.3 抽樣收集
11.4 與Logstash 整合
11.5 與Zipkin 整合
A Starter POMs
前言
01 基礎知識
1.1 什麼是微服務架構
1.2 為什麼選擇Spring Cloud
1.3 Spring Cloud 簡介
1.4 版本說明
02 微服務建置:Spring Boot
2.1 架構簡介
2.2 快速入門
2.3 設定詳解
2.4 監控與管理
2.5 小結
03 服務治理:Spring Cloud Eureka
3.1 服務治理
3.2 Eureka 詳解
3.3 設定詳解
3.4 跨平台支援
04 用戶端負載平衡:Spring Cloud Ribbon
4.1 用戶端負載平衡
4.2 RestTemplate 詳解
4.3 原始程式分析
4.4 設定詳解
4.5 重試機制
05 服務容錯保護:Spring Cloud Hystrix
5.1 快速入門
...
購物須知
退換貨說明:
會員均享有10天的商品猶豫期(含例假日)。若您欲辦理退換貨,請於取得該商品10日內寄回。
辦理退換貨時,請保持商品全新狀態與完整包裝(商品本身、贈品、贈票、附件、內外包裝、保證書、隨貨文件等)一併寄回。若退回商品無法回復原狀者,可能影響退換貨權利之行使或須負擔部分費用。
訂購本商品前請務必詳閱退換貨原則。