前言:
最近几年,微服务可谓是大行其道。在业务模型不完善,超大规模流量的冲击的情况下,许多企业纷纷抛弃了传统的单体架构,拥抱微服务。这种模式具备独立开发、独立部署、可扩展性、可重用性的优点的同时,也带来这样一个问题:开发、运维的复杂性提高。有人感觉微服务越做越不方便管理。
内容摘要:
本书以一个名为EagleEye的项目为主线,介绍云、微服务等概念以及Spring Boot和SpringCloud等诸多Spring项目,并介绍如何将EagleEye 项目一步一步地从单体架构中构成微服务架构,进而将这个项目拆分成众多微服务,让它们运行在各自的Docker容器中,实现持续集成特续部署,并最终自动部署到云环境(Amazon )中。针对在重构过程中遇到的各种微服务开发会面临的典型问题(包括开发、测试和运维等问题),本书介绍了解决这些问题的核心模式,以及在实战中如何选择特定Spring Cloud子项目或其他工具解决这些问题。
本书适合拥有构建分布式应用程序的经验、拥有Spring的知识背最以及对学习构建基于微服务的应用程序感兴趣的Java 开发人员阅读。
对于希望使用微服务构建基于云的应用程序,以及希望了解如何将基于微服务的应用部署到云上的开发人员,本书也具有很好的学习参考价值。
最近整理了一套微服务实战文档,讲解很透彻。今天分享给大家。这份资料尤其适合以下人群:
■拥有构建分布式应用程序经验(1~3年)的Java开发人员。
■拥有Spring的知识背景(1年以上)的技术人员。
■对学习构建基于微服务的应用程序感兴趣的技术人员。
■对使用微服务构建基于云的应用程序感兴趣的技术人员。
■想要知道Java和Spring是否是用于构建基于微服务的应用程序的相关技术的技术人员。
■有兴趣了解如何将基于微服务的应用部署到云上的技术人员。
本书主要介绍内容:
●核心微服务设计原则。
●使用Spring Cloud Config管理配置。
●使用 Spring、Hystrx 和Ribbon实现客户端弹性。
●使用 Netfix Zuul进行智能路由。
●部署 Spring Cloud应用程序。
此书籍具体章节内容有:
第1章:欢迎迈入云世界,Spring
第2章:使用Spring Boot构建微服务
第3章:使用Spring Clou置服务器控制配置
第4章:服务发现
第5章:使用Spring Cloud和NetflixHystrix的客户端弹性模式
第6章:使用Spring Cloud和Zu1l进行服务路由
第7章:保护微服务
第8章:使用Spring Cloud Str e am的事件驱动架构
第9章:使用Spring Cloud s1 euth和Zipkin进行分布式跟踪
第10章:部署微服务
附录
本书包含10章和2个附录:
■第1章:会介绍微服务架构为什么是构建应用程序,尤其是基于云的应用程序的重要相关方法。
■第2章:将引导读者了解如何使用Spring Boot构建第一一个基于REST的微服务。这一章将介绍如何通过架构师、应用工程师和DevOps工程师的角度来审视微服务。
■第3章:会介绍如何使用Spring Cloud Confg管理微服务的配置。Spring Cloud Config可帮助开发人员确保服务的配置信息集中在单个存储库中,并且在所有服务实例中都是版本控制和可重复的。.
■第4章:介绍第一个微服务路由模式一 服务发现。在这一 章中,读者将学习如何使用Spring Cloud和Netlix的Eureka服务,将服务的位置从客户的使用中抽象出来。
■第5章:讨论在一个或多个微服务实例关闭或处于降级状态时保护微服务的消费者。这一章将演示如何使用Spring Cloud和Netlix Hystrix (和Netlix Ribbon )来实现客户端调用的负载均衡、断路器模式、后备模式和舱壁模式。
■第6章:会介绍微服务路由模式一服 务网关。使用Spring Cloud和Netlix的Zuul服务器,开发人员将为所有微服务建立一个单一人口点。我们将讨论如何使用Zuul的过滤器API来构建可以针对流经服务网关的所有服务强制执行的策略。
■第7章:介绍如何使用Spring Cloud Security和OAuth2实现服务验证和授权。我们将介绍如何设置OAuth2服务来保护服务,以及如何在OAuth2实现中使用JSONWeb令牌(JSONWeb Tokens,JWT )。
■第8章:讨论如何使用Spring Cloud Stream和Apache Kafka将异步消息传递到微服务中。
■第9 章:介绍如何使用Spring Cloud Sleuth和Open Zipkin来实现日志关联、日志聚合和跟踪等常见8志记录模式。
■第10章:是本书的基石项目。读者将使用在本书中构建的服务,并将其部署到亚马逊弹性容器服务( Amazon Elastic Container Service, ECS )。我们还将讨论如何使用TravisCI等工具自动化构建和部署微服务。
■附录A:介绍如何设置桌面开发环境,以便可以运行本书中的所有代码示例。本附录介绍本地构建过程是如何工作的,以及想要在本地运行代码示例时如何本地启动Docker。
■附录B:是OAuth2的补充资料。OAuth2是一-种非常灵活的身份验证模型,这一附录简要介绍OAuth2可用于保护应用程序及其相应的微服务的不同方式。
由于篇幅限制,小编这里只将此实战文档的所含内容全部展现出来了,需要获取完整文档用以学习的猿友们,可以帮忙转发分享此文,点此加入获取。
而且还会或得以下:(包括面试题)
还在犹豫吗?领取方式:点此加入免费领取。