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的捐款仍然是自愿的(并且未支付)。我们建议您向作者提出具有挑战性的问题,以免引起他的兴趣!

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