使用Spring Boot框架构建基于Java的微服务架构,将应用程序从小型单体架构蜕变为由多个服务组成的事件驱动架构。这个最新版本围绕服务发现、负载均衡、路由、集中式日志、按环境配置和容器化等知识点,循序渐进地讲述微服务架构、测试驱动的开发和分布式系统中的常见模式。
本书介绍Spring Boot最新版本新增的功能,包括支持最新版本的Java SE、使用JUnit 5进行测试、更新用于服务发现和负载均衡的Spring Cloud工具、使用云原生构建包构建Docker映像、提供基本的集中式日志解决方案、使用Sleuth实现E2E可追溯性、使用Consul进行集中式配置、依赖项升级、支持Spring Data Neumann等。
作者Moisés使用紧贴实用的方法来解释使用这种软件架构的好处,而不是只偏重理论概念,介绍了计算机编程中的一些最先进技术。你将专注于学习关键技术,从开发最小可行性产品入手,并保持演进的灵活性。
主要内容
•使用Spring Boot构建微服务
•发现分布式系统的架构模式,如异步处理、最终一致性、弹性、可扩展性等
•在RabbitMQ中使用事件驱动的架构和消息传递
•使用Consul进行服务发现,使用Spring Cloud Load Balancer进行负载均衡
•使用Spring Cloud Gateway路由请求
•使用Spring Cloud Consul按环境进行灵活配置
•使用Sleuth和集中式日志记录从头到尾跟踪每个请求
•将微服务作为Docker容器部署到任何需要之处
• 使用Docker Compose启动微服务架构中的所有组件
Spring Boot是Pivotal团队设计的一种微服务框架, 基于Spring开发,用于简化新Spring应用的初始搭建及开发过程,提升Spring 开发者的体验。它秉持"约定大于配置"的思想,集成了大量开箱即用的第三方库,支持绝大多数开源软件,使开发者更专注于业务逻辑,便捷地构建微服务。Spring Boot的出现为Java领域内实施微服务架构提供了技术支撑,是Java领域最出色的微服务架构实施技术。
本书首先解释为什么要从一个小的单体应用开始学习,然后从一个空项目入手,开始分层创建微服务;在此过程中构建Web应用程序,展示Spring Boot在处理应用程序时的强大功能,最后深入探讨微服务的一些核心概念。本书围绕服务发现、负载均衡、路由、集中式日志、按环境配置和容器化等内容,采用增量方法介绍微服务架构、测试驱动开发和分布式系统中的常见模式。