话不多说,直接上图
深入介绍Spring Boot、Spring Cloud、Docker、 Mesos和Marathon掌握响应式微服务设计原则,轻松构建大规模、可扩展的互联网级微服务。
学习目录
本书提供了实现大型响应式微服务的实用方法和指导原则,并通过示例全面讲解如何构建微服务。本书深入介绍了Spring Boot、Spring Cloud、Docker、Mesos和Marathon,还会教授如何用Spring Boot部署自治服务,而无须使用重量级应用服务器,并介绍Spring Cloud框架的各项能力、如何使用Docker实现容器化,以及如何使用Mesos和Marathon抽象出计算资源和控制整个集群。
内容展示
第1章微服务揭秘 微服务是一种架构风格,也是一种针对现代业务需求的软件开发方法。微服务并非发明出来的,确切地说是从之前的架构风格演进而来的。
第2章相关架构风格和用例 微服务技术当前正是火热。与此同时,还有关于其他架构风格的讨论,比如无服务器架构。哪种架构风格更好呢?它们之间存在竞争关系吗?什么场景适合用微服务架构?使用微服务架构的最佳方式是什么?许多开发人员有类似的疑问。
第3章用Spring Boot构建微服务得益于强大的Spring Boot框架,开发微服务变得不那么枯燥乏味了。SpringBoot框架使用Java语言开发生产就绪微服务。本章着重代码示例,从微服务理论转向具体实践。首先介绍Spring Boot框架,然后讨论如何用Spring Boot构建与前一章讲过的原则和特征相一致的RESTful微服务,最后介绍Spring Boot为开发生产就绪的微服务提供的一些特性。
第4章应用微服务概念微服务很好,但设计不当也会变得很糟糕。错误的理解和设计决策可能会引起误解,造成不可恢复的故障。本章会研究在实际项目中实现微服务的一些技术挑战,并提供一些准则来指导关键的设计决策,确保成功开发微服务应用,还会介绍一些解决方案和设计模式来消除针对微服务的一系列常见顾虑。
第5章微服务能力模型微服务能力模型的重要性有哪些呢?设计微服务并不像开发含UI、业务逻辑和数据库的Web应用那么简单。后者对于简单的服务或者只处理少量微服务而言足够了。开发人员在开发大型微服务系统时通常需要考虑服务实现以外的问题。成功的微服务项目交付需要一系列相关生态系统的能力,确保这些前提条件到位非常重要,然而微服务实现不存在标准的参考模型。
注意:需要免费领取spring微服务设计的朋友,帮忙一键三连,文末扫码即可~
第6章微服务演进案例研究类似于SOA,不同的组织会根据具体问题,以不同的方式阐释微服务架构。除非细致地研究过真实的复杂问题,否则难以理解微服务的那些概念。
本章会引入一个虚构的廉价航空公司BrownField Airline(BF),探究如何将其从一个单体式客运销售和服务(PSS)应用向下一代微服务架构演进。本章会深入研究PSS应用,并在遵循上一章介绍的设计原则和实践方法的基础上,解释该应用从一个单体系统向一个基于微服务的架构迁移的挑战、方法和演进步骤。
第7章用Spring Cloud组件扩展微服务要管理互联网级微服务,仅有Spring Boot框架还不够,还需要更多能力。
Spring Cloud项目拥有一整套专门的组件,可轻松实现这些能力。本章会详细介绍Spring Cloud项目中的各种组件,比如Eureka、Zuul、Ribbon和Spring Config,并将这些组件放置在第4章介绍的微服务能力模型的相应位置。本章会演示如何使用Spring Cloud组件是对前一章开发的BrownField航空公司的PSS微服务系统进行扩展。
第8章微服务的日志管理和监控互联网级微服务部署的一大挑战是对每个微服务的日志记录和监控,这是由其高度分布式的特性决定的。通过关联不同微服务产生的日志来追踪端到端的事务十分困难。类似于单体应用,没有通用的工具可用于监控微服务。这一点很重要,尤其在实现采用了一系列技术开发的企业级微服务时(第7章讨论过)。
本章会探讨日志管理和监控在微服务部署中的必要性和重要性,还会进一步研究用一系列候选架构和技术来解决日志和监控问题时面临的各种挑战及解决办法。
第9章用Docker容器化微服务在微服务的上下文中,容器化部署好比锦上添花。通过包含底层的基础设施,容器化部署有助于微服务进一步实现自治,进而使微服务实现云中立。
本章介绍虚拟机镜像和微服务容器化部署的概念和两者之间的关联,然后介绍如何为BrownField航空公司PSS微服务系统构建Docker镜像,这些微服务都是用Spring Boot和Spring Cloud开发的,最后介绍如何在类生产环境中管理、维护和部署Docker镜像。
第10章用Mesos和Marathon扩 展容器化的微服务为了充分利用云环境的能力,Docker化的微服务实例需能根据流量特征自动的扩容和缩容。但这引来了另外一个问题:如果有大量微服务,就很难手动管理几千个Docker化的微服务。这时必须有一个基础设施的抽象层和一个强大的容器编排平台来管理互联网级Docker化微服务的部署。
第11章微服务开发生命周期类似于软件开发生命周期,若想成功实现微服务架构,需要理解微服务开发生命周期。
本章以BrownField航空公司的PSS微服务为例,着重介绍微服务的开发流程和实践。此外,本章会阐述组建开发团队的最佳实践、开发方法论、自动化测试、微服务持续交付,这些都和DevOps实践相一致,最后会阐明微服务分布式治理方法中参考架构的重要性。
需要这份Spring微服务架构设计的朋友:
如何领取?——一键三连,扫码即可~