Spring Microservices in Action

關於這本書

Spring Microservices in Action是爲Java / Spring開發人員編寫的,他們需要動手建議以及有關如何構建和操作基於微服務的應用程序的示例。當我寫這本書時,我希望它基於核心微服務模式,並與展示了實際模式的Spring Boot和Spring Cloud示例保持一致。這樣,您將在幾乎每一章中找到討論的特定微服務設計模式,以及使用Spring Boot和Spring Cloud實現的模式示例。

您應該閱讀這本書,如果

  • 您是一位Java開發人員,具有構建分佈式應用程序的經驗(1-3年)。
  • 您有春季背景(1年以上)。
  • 您有興趣學習如何構建基於微服務的應用程序。
  • 您對如何使用微服務來構建基於雲的應用程序感興趣。
  • 您想知道Java和Spring是否是用於構建基於微服務的應用程序的相關技術。
  • 您有興趣瞭解將基於微服務的應用程序部署到雲中需要做什麼。

本書的組織方式

Spring Microservices in Action由10章和兩個附錄組成:

  • 第1章向您介紹爲什麼微服務架構是構建應用程序(尤其是基於雲的應用程序)的重要且相關的方法。
  • 第2章將引導您如何使用Spring Boot構建第一個基於REST的微服務。本章將指導您如何從架構師,應用程序工程師和DevOps工程師的角度看待微服務。
  • 第3章介紹瞭如何使用Spring Cloud Config管理微服務的配置。Spring Cloud Config可以幫助您確保服務的配置信息集中在單個存儲庫中,並且可以在所有服務實例之間進行版本控制和重複。
  • 第4章向您介紹了第一種微服務路由模式:服務發現。在本章中,您將學習如何使用Spring Cloud和Net-flix的Eureka服務從使用它們的客戶端中抽象出服務的位置。
  • 第5章都是關於在一個或多個微服務實例關閉或處於降級狀態時保護微服務的使用者。本章將演示如何使用Spring Cloud和Netflix Hystrix(以及Netflix Ribbon)來實現客戶端的呼叫負載均衡,斷路器模式,後備模式和隔板模式。
  • 第6章介紹了微服務路由模式:服務網關。通過將Spring Cloud與Netflix的Zuul服務器結合使用,您將爲要調用的所有微服務構建單個入口點。我們將討論如何使用Zuul的filter API來構建可對流經服務網關的所有服務強制執行的策略。
  • 第7章介紹瞭如何使用Spring Cloud安全性和OAuth2實現服務身份驗證和授權。我們將介紹設置OAuth2服務以保護您的服務的基礎知識,以及如何在OAuth2實現中使用JavaScript Web令牌(JWT)。
  • 第8章介紹如何使用Spring Cloud Stream和Apache Kafka將異步消息傳遞引入微服務。
  • 第9章介紹瞭如何使用Spring Cloud Sleuth和Open Zipkin實現常見的日誌記錄模式,例如日誌相關性,日誌聚合和跟蹤。
  • 第10章是本書的基礎項目。您將採用書中內置的服務,並將其部署到Amazon Elastic Container Service(ECS)。我們還將討論如何使用Travis CI等工具自動構建和部署微服務。
  • 附錄A涵蓋了如何設置桌面開發環境,以便您可以運行本書中的所有代碼示例。本附錄介紹了本地構建過程的工作方式,以及如果要在本地運行代碼示例,則如何在本地啓動Docker。
  • 附錄B是OAuth2的補充材料。OAuth2是一種非常靈活的身份驗證模型,本章簡要概述了可以使用OAuth2保護應用程序及其相應微服務的不同方式。

關於代碼

Spring Microservices in Action在每一章中都包含代碼。所有代碼示例均在我的GitHub存儲庫中提供,並且每一章都有其自己的存儲庫。您可以在https://github.com/carnellj/spmia_overview中找到概述頁面,該頁面具有指向各章代碼存儲庫的鏈接。也可以從發行商的網站www.manning.com/books/spring-microservices-in-action中獲得包含所有源代碼的zip 。

本書中的所有代碼都是使用Maven作爲主要構建工具在Java 8上運行的。請參閱本書的附錄A,以獲取編譯和運行代碼示例所需的軟件工具的完整詳細信息。

我寫這本書時遵循的核心概念之一是,每章中的代碼示例應獨立於其他各章中的代碼示例運行。因此,我們爲章節創建的每個服務都將構建到相應的Docker映像。當使用前幾章的代碼時,它既作爲源代碼,也作爲內置的Docker映像提供。我們使用Docker compose和構建的Docker映像來確保您對每章都具有可重現的運行時環境。

本書在編號清單和符合普通文字的情況下均包含許多源代碼示例。在這兩種情況下,源代碼都以格式格式化,fixed-width font like this以將其與普通文本分開。有時代碼還會in bold突出顯示與本章前面的步驟已更改的代碼,例如,當新功能添加到現有代碼行時。

在許多情況下,原始源代碼已重新格式化;我們添加了換行符和重新設計的縮進以適應本書中的可用頁面空間。在極少數情況下,即使這是不夠的,而列表包括續行標誌(➥)。此外,當在文本中描述代碼時,通常會將源代碼中的註釋從列表中刪除。許多清單中都有代碼註釋,突出了重要的概念。

在線作者

購買Spring Microservices in Action可以免費訪問由Manning Publications運營的私人網絡論壇,您可以在其中對本書進行評論,提出技術問題並獲得作者和其他用戶的幫助。要訪問論壇並進行訂閱,請將您的Web瀏覽器指向www.manning.com/books/spring-microservices-in-action。此頁面提供有關注冊後如何進入論壇,可以提供何種幫助以及論壇行爲準則的信息。

曼寧對讀者的承諾是提供一個場所,使各個讀者之間以及讀者與作者之間進行有意義的對話。這並不是對作者任何特定參與程度的承諾,作者對AO的捐款仍然是自願的(並且未支付)。我們建議您向作者提出具有挑戰性的問題,以免引起他的興趣!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章