当下互联网行业飞速发展,快速的业务更新和产品迭代也给系统开发过程和模式带来新的挑战。围绕来自团队外部和内部的变化和挑战,如何更为合理的划分系统和团队边界、如果更加有效的组织系统开发过程、如何通过技术手段识别和消除开发过程中存在的浪费成为广大软件开发和技术管理人员所需要思考的命题。在这种背景下,微服务架构应运而生。想要实现微服务架构,需要明确微服务的设计原理和架构,也需要掌握相应的技术体系和实践。关于前者,笔者已出版《微服务设计原理和架构》一书。本书主要面向后者,即围绕微服务架构的实现技术给出相应的工具框架和工程实践,旨在为广大开发人员提供对主流微服务架构实现技术的完整、全面和实用的介绍。
本书主要包含微服务架构实现过程中所应具备的技术体系和工程实践,围绕实现微服务架构的基础组件和关键要素,引入Spring Boot、Spring Cloud、Docker等技术体系构建微服务体系。本书在组织结构上分为如下所示的12章内容,并结合这些章节给出一个完整的实现案例。
- 微服务架构设计,简要介绍微服务的建模方法、服务拆分和集成、基础组件和关键要素以及实施方法。
- 使用Spring Boot构建服务,引入Spring Boot作为单个微服务的实现框架。
- Spring Cloud Netflix Eureka与服务治理,引入Eureka实现服务注册和发现。
- Spring Cloud Netflix Ribbon与负载均衡,引入Ribbon实现客户端负载均衡。
- Spring Cloud Netflix Hystrix与服务容错,引入Hystrix实现面向消费者的服务容错。
- Spring Cloud Netflix Zuul与API网关,引入Zuul实现API网关。
- Spring Cloud Config与配置中心,引入Spring Cloud Config实现分布式配置中心。
- Spring Cloud Stream与事件驱动,引入Spring Cloud Stream实现服务之间的消息传递。
- Spring Cloud Security与服务安全,引入Spring Cloud Security实现服务的安全访问。
- Spring Cloud Sleuth与服务监控,引入Spring Cloud Sleuth实现服务的跟踪和监控。
- Spring Test与服务测试,引入Spring Test实现多层次的服务测试。
- Docker与服务部署,引入Docker实现服务的高效部署。
本书面向立志于成为微服务架构师的服务开发人员,读者不需要有很深的技术水平,也不限于特定的开发语言,但熟悉Java EE常见技术并掌握一定系统设计基本概念有助于更好的理解书中的内容。通过本书的系统学习,读者将对微服务架构的技术体系和实现机制有全面而深入的了解,为后续的工作和学习铺平道路。
更多内容可以关注我的公众号:程序员向架构师转型。