重新定义Spring Cloud实战pdf下载

重新定义Spring Cloud实战百度网盘pdf下载

作者:
简介:重新定义Spring Cloud实战
出版社:机械工业出版社
出版时间:2018-09-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

编辑推荐
  (1)本书由Spring Cloud社区官方撰写,核心成员来自原阿里、蚂蚁金服、京东金融等互联网企业,经验丰富。
  (2)本书内容有3大特色:宽度足够广、深度足够深,而且立足于生产实践,直接从生产实践出发,包含大量生产实践的配置
  (3)本书得到了来自阿里、腾讯、百度、京东等大型互联网企业的近10位专家的鼎力推荐。
内容简介
  在微服务体系中,Spring Cloud是目前最热门的构建微服务体系的解决方案,它提供了构建微服务架构的一些基础设施。本书内容上覆盖了Spring Cloud的一些主要组件,不仅在如何使用上做了详细的介绍,也从原理上深入浅出地剖析了其中的技术要点,同时也将部分组件与周边的一些开源项目进行了对比,且提供了一些原理分析和相关的示例,是一本不可多得的Spring Cloud实战书籍。新手和有微服务实践经验的读者都能从书中得到一些不一样的收获。
作者简介
  许进
  Spring Cloud中国社区创始人,阿里原资深工程师,花名玹霖,专注于基础架构与中间件研发,曾就职于唯品会平台架构部和饿了么。个人网站://xujin.org。
  钟尊发
  Spring Cloud中国社区联合创始人,现就职于京东金融,对微服务有深入研究。
  叶志远
  Spring Cloud中国社区联合创始人,现就职于蚂蚁金服,花名梓尧。CSDN博客专家,开源社区活跃者,国内Spring Cloud早期实践者
  方志朋
  Spring Cloud中国社区联合创始人,硕士学历,《深入理解Spring Cloud与微服务构建》作者,CSDN博客专家(阅读量600万+),在社区具有较高活跃度与影响力。
  蔡波斯
  拥有多年Java开发经验,曾就职于美团、腾讯。国内Spring Cloud领域的早期实践者,现在金融行业从事FinTech相关研发
  郭芳碧
  多年微服务实践经验,现任职于某互联网金融公司中间件部门。
  朱德明
  拥有10年Java开发经验,多年技术架构和解决方案经验,现任灵雀云微服务架构师,在微服务领域有着丰富的落地经验,曾任某创业公司技术负责人。
目录
专家推荐
序1
序2
序3
前言
第1章 微服务与Spring Cloud
1.1 微服务架构概述
1.2 Spring Cloud与中间件
1.3 Spring Cloud增强生态
1.4 本章小结
第2章 Spring Cloud Eureka上篇
2.1 服务发现概述
2.2 Spring Cloud Eureka入门案例
2.3 Eureka Server的REST API简介
2.4 本章小结
第3章 Spring Cloud Eureka下篇
3.1 Eureka的核心类
3.2 服务的核心操作
3.3 Eureka的设计理念
3.4 Eureka参数调优及监控
3.5 Eureka实战
3.6 Eureka故障演练
3.7 本章小结
第4章 Spring Cloud Feign的使用扩展
4.1 Feign概述
4.2 Feign的基础功能
4.3 Feign的实战运用
4.4 venus-cloud-feign设计与使用
4.5 本章小结
第5章 Spring Cloud Ribbon实战运用
5.1 Spring Cloud Ribbon概述
5.2 Spring Cloud Ribbon实战
5.3 Spring Cloud Ribbon进阶
5.4 本章小结
第6章 Spring Cloud Hystrix实战运用
6.1 Spring Cloud Hystrix概述
6.2 Spring Cloud Hystrix实战运用
6.3 本章小结
第7章 Spring Cloud Zuul基础篇
7.1 Spring Cloud Zuul概述
7.2 Spring Cloud Zuul入门案例
7.3 Spring Cloud Zuul典型配置
7.4 本章小结
第8章 Spring Cloud Zuul中级篇
8.1 Spring Cloud Zuul Filter链
8.2 Spring Cloud Zuul权限集成
8.3 Spring Cloud Zuul限流
8.4 Spring Cloud Zuul动态路由
8.5 Spring Cloud Zuul灰度发布
8.6 Spring Cloud Zuul文件上传
8.7 Spring Cloud Zuul实用小技巧
8.8 本章小结
第9章 Spring Cloud Zuul高级篇
9.1 Spring Cloud Zuul多层负载
9.2 Spring Cloud Zuul应用优化
9.3 Spring Cloud Zuul原理&核心源码解析
9.4 本章小结
第10章 Spring Cloud基础综合案例
10.1 基础框架
10.2 实战扩展
10.3 生产环境各组件参考配置
10.4 本章小结
第11章 Spring Cloud Config上篇
11.1 Spring Cloud Config配置中心概述
11.2 刷新配置中心信息
11.3 本章小结
第12章 Spring Cloud Config下篇
12.1 服务端Git配置详解与实战
12.2 关系型数据库的配置中心的实现
12.3 非关系型数据库的配置中心的实现
12.4 Spring Cloud Config使用技能
12.5 Spring Cloud Config功能扩展
12.6 高可用部分
12.7 Spring Cloud与Apollo配置使用
12.8 Spring Cloud与Apollo结合使用实战
12.9 本章总结
第13章 Spring Cloud Consul上篇
13.1 Consul简介
13.2 Spring Cloud Consul简介
13.3 本章小节
第14章 Spring Cloud Consul下篇
14.1 Spring Cloud Consul深入
14.2 Spring Cloud Consul功能重写
14.3 常见问题排查
14.4 本章小节
第15章 Spring Cloud认证和鉴权
15.1 微服务安全与权限
15.2 Spring Cloud认证与鉴权方案
15.3 Spring Cloud认证鉴权实战案例
15.4 本章小结
第16章 Spring Cloud全链路监控
16.1 全链路监控概述
16.2 Sleuth基本用法
16.3 Sleuth深入用法
16.4 Spring Cloud与SkyWalking
16.5 Spring Cloud与Skywalking实战
16.6 Spring Cloud与Pinpoint
16.7 Spring Cloud与Pinpoint实战
16.8 本章总结
第17章 Spring Cloud Gateway上篇
17.1 Spring Cloud Gateway概述
17.2 Spring Cloud Gateway的工作原理
17.3 Spring Cloud Gateway入门案例
17.4 Spring Cloud Gateway的路由断言
17.5 Spring Cloud Gateway的内置Filter
17.6 本章小结
第18章 Spring Cloud Gateway下篇
18.1 Gateway基于服务发现的路由规则
18.2 Gateway Filter和Global Filter
18.3 Spring Cloud Gateway实战
18.4 Spring Cloud Gateway源码篇
18.5 本章小结
第19章 Spring Cloud与gRPC上篇
19.1 Spring Cloud为什么需要gRPC
19.2 gRPC简介
19.3 gRPC的一些核心概念
19.4 RPC的生命周期
19.5 gRPC依赖于Protocol Buffers
19.6 gRPC基于HTTP2
19.7 gRPC基于Netty进行IO处理
19.8 gRPC案例实战
19.9 本章小结
第20章 gRPC在Spring Cloud与gRPC下篇
20.1 gRPC Spring Boot Starter介绍
20.2 gRPC Spring Boot Starter架构设计
20.3 gRPC Spring Boot Starter源码分析
20.4 案例实战
20.5 本章小结
第21章 Spring Cloud版本控制与灰度发布
21.1 背景
21.2 常见发布方式
21.3 版本控制与灰度发布实战
21.4 本章小结
第22章 Spring Cloud容器化
22.1 Java服务Docker化
22.2 Spring Cloud组件的Docker化
22.3 使用Kubernetes管理
22.4 本章小结
第23章 Dubbo向Spring Cloud迁移
23.1 将Dubbo服务纳入Spring Cloud体系中
23.2 将Spring Cloud服务Dubbo化
23.3 本章小结
第24章 Spring Cloud与分布式事务
24.1 概述
24.2 解决方案
24.3 实战
24.4 本章小结
第25章 Spring Cloud与领域驱动实践
25.1 领域驱动概述
25.2 领域驱动核心概念
25.3 Halo框架的设计
25.4 Spring Cloud与Halo实战
25.5 本章小结
媒体评论
  过去十几年里,广义的“微服务”架构以其小团队快速创建和迭代服务带来的架构弹性、扩展性、敏捷性,天然匹配了互联网业务快速发展和变化的特点,在各大互联网公司取得了巨大的成功。时至云原生应用时代,已不再是是否采用微服务架构的问题,而是何时采用以及如何在生产上实战的问题。本书将如何基于Spring Cloud生态体系进行微服务实战的方方面面的细节都涵盖了,,从这个意义上来讲,确实做到了“重新定义”。
  —— 坤宇 Nacos开源项目创始人/阿里巴巴高级技术专家


  微服务以敏捷为目标,以降低复杂的系统结构为基础,带给我们更好的系统可用性和稳定性。Spring Cloud作为一套完善的微服务治理的典型框架,涵盖了微服务治理的方方面面。本书详细介绍了Spring Cloud的每一个核心模块,以理论与实际相结合的方式,透彻地讲述了Spring Cloud的精髓,是每一位奋战在服务化领域一线的工程师、架构师的*选技术书籍。
  ——李艳鹏 蚂蚁金服高级技术专家/《分布式服务架构》《可伸缩服务架构》作者


  本书可以说是后端架构师的进阶宝典,全面地讲解了如何打造一套强大、健壮的微服务体系,深入分析了涉及到的各个组件。*难得的是,书中结合了作者多年积累的架构经验,分析了各种组件适用的场景,平实地说明了实际使用中的各种考量和细节优化,简直是奋斗在一线的工程师的心血结晶。任何想掌握大型后端架构的工程师,无论使用什么技术框架,都能从本书获益匪浅。
  ——李双涛 饿了么中间件资深架构师


  Spring Cloud已然成为Java领域应用微服务化的*选框架,但国内一直缺少全面论述Spring Cloud商用实践相关的书籍。本书围绕Spring Cloud框架中的服务注册发现、服务路由、服务网关、分布式配置、服务治理、容器化及微服务设计等关键领域进行了深入浅出的讲解,并给予了大量的真实应用案例,新手和老手都可以从中受益良多。作者作为Spring Cloud中国的资深专家,对于Spring Cloud及微服务有着深刻的架构和实战经验,值得信赖。
  ——单家骏 腾讯中间件高级工程师
前言
  前言 Preface
  随着互联网的快速普及,云计算近年来得到蓬勃发展,企业的IT环境和架构体系也逐渐发生变革,其中最典型的就是过去的单体应用架构发展为当今流行的微服务架构。微服务是一种架构风格,其优势是为软件应用开发带来很大的便利,让敏捷开发和复杂的企业应用快速持续交付成为可能。随着微服务架构的流行,很多企业纷纷使用微服务架构来搭建新的系统或者对历史系统进行重构,但是微服务架构的实施和落地会面临很大的挑战。虽然微服务架构的解决方案很多,但是对于如何真正落地微服务架构,目前还没有公认的技术标准和规范。幸运的是,业界已经有一些很有影响力的开源微服务解决方案,比如2015年年初,Spring团队推出的Spring Cloud,其目标是成为Java领域微服务架构落地的标准。Spring Cloud经过高速迭代和发展,至今已经成为Java领域落地微服务架构的推荐解决方案,为企业IT架构变革保驾护航。
  Spring Cloud是一个优质的开源项目,它的稳健发展离不开众多开发人员的实践与反馈,开发人员通过一个社区化的平台去交流学习从而使Spring Cloud逐渐完善。Spring Cloud发展到2016年,得到国内越来越多的人的关注,但是相应的学习交流平台和材料比较分散,这阻碍了Spring Cloud在我国的普及和发展。因此Spring Cloud中国社区应运而生。Spring Cloud中国社区(//springcloud.cn)是国内首个基于Spring Cloud微服务体系创建的非盈利技术社区,也是国内首个致力于Spring Cloud微服务架构开放交流的社区,是专为Spring Boot或Spring Cloud技术人员提供分享和交流服务的平台,目的是推动Spring Cloud在中国的普及和应用。
精彩书摘
  随着互联网的快速发展,云计算近十年也得到蓬勃发展,企业的IT环境和IT架构也逐渐在发生变革,从过去的单体应用架构发展为至今广泛流行的微服务架构。微服务是一种架构风格,能给软件应用开发带来很大的便利,但是微服务的实施和落地会面临很大的挑战,因此需要一套完整的微服务解决方案。在Java领域,Spring框架的出现给Java企业级软件开发带来了福音,提高了开发效率。在2014年底,Spring团队推出Spring Cloud,目标使其成为Java领域微服务架构落地的标准,发展至今,Spring Cloud已经成为Java领域落地微服务架构的完整解决方案,为企业IT架构变革保驾护航。
  应用是可独立运行的程序代码,提供相对完善的业务功能。目前软件架构有三种架构类型,分别是业务架构、应用架构、技术架构。它们之间的关系是业务架构决定应用架构,技术架构支撑应用架构。架构的发展历程是从单体架构、分布式架构、SOA架构再到微服务架构,如图1-1所示。
  1.单体应用架构
  单体架构在Java领域可以理解为一个Java Web应用程序,包含表现层、业务层、数据访问层。从Controller到Service再到Dao层,“一杆子捅到底”,没有任何应用拆分,开发完毕之后变成一个超级大型的War部署。简单的单体架构水平分层逻辑如图1-2所示。
  单体架构的优点:
  ·易于开发:开发人员使用当前开发工具在短时间内就可以开发出单体应用。
  ·易于测试:因为不需要依赖其他接口,测试可以节约很多时间。
  ·易于部署:你只需要将目录部署在运行环境中即可。
  单体架构的缺点:
  ·灵活度不够:如果程序有任何修改,修改的不只是一个点,而是自上而下地去修改,测试时必须等到整个程序部署完后才能看出效果。在开发过程可能需要等待其他开发人员开发完成后才能完成部署,降低了团队的灵活性。
  ·降低系统的性能:原本可以直接访问数据库但是现在多了一层。即使只包含一个功能点,也需要在各个层写上代码。
  ·系统启动慢:一个进程包含了所有业务逻辑,涉及的启动模块过多,导致系统的启动时间延长。
  ·系统扩展性比较差:增加新东西的时候不能针对单个点增加,要全局性地增加。牵一发而动全身。
  2.分布式架构
  什么是传统的分布式架构?简单来说,按照业务垂直切分,每个应用都是单体架构,通过API互相调用,如图1-3所示。
  3.面向服务的SOA架构
  面向服务的架构是一种软件体系结构,其应用程序的不同组件通过网络上的通信协议向其他组件提供服务或消费服务,所以也是一种分布式架构。简单来说,SOA是不同业务建立不同的服务,服务之间的数据交互粗粒度可以通过服务接口分级,这样松散耦合提高服务的可重用性,也让业务逻辑变得可组合,并且每个服务可以根据使用情况做出合理的分布式部署,从而让服务变得规范,高性能,高可用。
  SOA架构中有两个主要角色:服务提供者(Provider)和服务消费者(Consumer)。阿里开源的Dubbo是SOA的典型实现。
  SOA架构的优点:
  ·把模块拆分,使用接口通信,降低模块之间的耦合度。
  ·把项目拆分成若干个子项目,不同的团队负责不同的子项目。
  ·增加功能时只需要增加一个子项目,调用其他系统的接口即可。
  ·可以灵活地进行分布式部署。
  SOA架构的缺点:系统之间的交互需要使用远程通信,接口开发增加工作量。
精彩插图