微服务分布式构架开发实战

网站

更多书籍点击进入>> CiCi岛

下载

电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍

封页

封页

编辑推荐

1.从实际出发 本书并没有过多的探讨理论性的东西,基于现有成熟框架,围绕实际项目中遇见的具体需求,以微服务分布式架构的角度去逐一分解并且实现这些需求。掌握这些知识的读者,完全有能力快速搭建出可靠、高效、灵活的微服务分布式架构。 2.与行业动向接轨 借助于现有框架进行微服务分布式架构实践的成本越来越低,并且正在逐渐成为主流架构。在进行框架及第三方库的选择时,也同样紧跟行业动向。 3.简单易懂 本书中的每一个示例都尽量用较少的代码和较快的的方式解决具体的问题,为读者呈现复杂系统中简单的一面。目的是为了快速接受并理解各知识点在微服务分布式架构中所处的位置及关系。

内容简介

随着第三方框架的逐渐完善,实施微服务架构的开发成本越来越低,分布式架构成为主流势不可挡。一个完善的架构或系统中包含了许多的知识点,而每一个知识点则又可以引出非常多的内容,过度地专注于细节反而会拖慢达成目标的步伐。为了更快地实施微服务,本书基于开源且稳定的第三方工具,介绍如何构建一个庞大且复杂的分布式系统,用于满足项目中的实际需求。 每一个工具库为了适应更丰富的使用场景,通常都会把部分参数以配置文件的方式暴露出来,同时提供用于开发环境的默认配置。本书基于快速使用为主线,尽可能多地讲解配置参数的意义及它们之间的关系,帮助读者在掌握足够多的知识点后,建立起对微服务分布式架构的认知,以便为探求更深层次的知识点做好铺垫。 本书适合Java工程师、初级架构师、大中专院校相关专业师生、Java培训班学员及独立kaifazhe与自学读者使用。 每一个工具库为了适应更丰富的使用场景,通常都会把部分参数以配置文件的方式暴露出来,同时提供用于开发环境的默认配置。本书基于快速使用为主线路,尽可能多地讲解配置参数的意义及之间的关系。在掌握足够多的知识点后建立起对微服务分布式架构的认知,以便为探求更深层次的知识点做好铺垫。

作者简介

龚鹏 全栈GEEK,高中时期开始自学Java,专注于互联网,具备软件开发、美术设计、产品策划等领域知识。匠工科技创始人,曾服务奥美互动、百度、中青旅,负责开发车联网设计、互联网*、电子商务等系统。

目 录

1 微服务介绍 1


1.1 什么是微服务架构 2


1.2 垂直应用与微服务 2


1.3 实现一个最简单的微服务框架 3


1.3.1 公共接口 4


1.3.2 服务端 4


1.3.3 客户端 7


1.3.4 完善框架 8


1.4 主流微服务框架介绍 9


1.4.1 Dubbo 9


1.4.2 Spring Cloud 10


2 模块拆分 12


2.1 拆分逻辑 13


2.2 单模块 14


2.3 基础模块 14


2.4 复杂模块 15


3 Spring Boot 16


3.1 目录结构 17


3.2 主要文件 18


3.3 编辑器集成 18


4 Dubbo 20


4.1 注册中心 21


4.2 接口工程 22


4.3 服务端 23


4.4 消费方 28


4.5 网关 30


4.6 监控中心 33


4.7 服务管理 35


4.8 负载均衡 36


4.9 服务降级 37


4.10 集群容错 38


5 Spring Cloud 40


5.1 注册中心 41


5.2 注册服务 44


5.3 调用服务 45


5.3.1 Ribbon 46


5.3.2 Feign 49


5.4 Zuul网关 51


5.5 Hystrix 断路器 54


5.5.1 Ribbon 54


5.5.2 Fegin 57


5.6 服务监控 58


5.7 应用监控 61


5.8 熔断器监控 62


5.8.1 单应用的熔断数据 63


5.8.2 使用Turbine聚合数据 64


5.8.3 Cloud Admin整合Turbine 65


5.9 统一管理配置文件 66


6 数据持久化 70


6.1 Spring Data MySQL 71


6.1.1 依赖与配置 71


6.1.2 实体映射 72


6.1.3 Repository 76


6.1.4 JdbcTemplate 79


6.1.5 事务管理 80


6.2 Spring Data MongoDB 81


6.2.1 依赖与配置 81


6.2.2 实体映射 82


6.2.3 Repository 83


6.2.4 MongoTemplate 84


6.3 Spring Data ElasticSearch 85


6.3.1 基本概念 85


6.3.2 安装与运行 86


6.3.3 基于HTTP交互 87


6.3.4 配置分词器 91


6.3.5 依赖与配置 94


6.3.6 实体映射 94


6.3.7 Repository 95


6.3.8 ElasticsearchTemplate 96


6.4 TCC 分布式事务 98


6.5 Spring Data Redis 100


6.5.1 安装运行 100


6.5.2 依赖与配置 101


6.5.3 缓存支持 102


6.5.4 RedisTemplate 106


6.5.5 全局锁 107


7 表单验证 110


8 定时任务 113


8.1 Spring Task 单机定时任务 114


8.2 Cron 表达式 114


8.3 QuartZ 分布式定时任务 116


9 分布式会话 122


10 消息队列 124


10.1 安装及配置RabbitMQ 125


10.2 配置及使用 128


11 构建Web应用 130


12 异常处理 133


13 安全认证 139


13.1 OAuth2.0 协议介绍 140


13.2 shouquan模式 141


13.3 在Dubbo中使用OAuth 2.0 142


13.4 在Spring Cloud 中


使用OAuth 2.0 151


13.4.1 shouquan中心 151


13.4.2 服务模块配置 154


13.4.3 网关配置 157


13.4.4 测试运行 159


14 日志管理 161


14.1 Spring Boot 日志 162


14.1.1 日志格式 162


14.1.2 输出到文件 163


14.1.3 扩展配置 163


14.2 分布式日志管理 166


14.2.1 ELK 搭建 167


14.2.2 Spring Boot 配置 169


15 热部署 171


16 接口文档管理 173


16.1 Dubbo中使用Swagger2 174


16.2 Spring Cloud中使用


Swagger2 178


16.2.1 微服务模块配置 179


16.2.2 网关模块配置 181


17 Nexus私库 184


17.1 Nexus 安装 185


17.2 从Nexus私库下载jar包 187


17.3 上传jar包到Nexus私库 189


18 发布系统 191


18.1 Jenkins 安装配置 192


18.2 构建任务 194


19 分布式架构总结 201





每一个工具库为了适应更丰富的使用场景,通常都会把部分参数以配置文件的方式暴露出来,同时提供用于开发环境的默认配置。本书基于快速使用为主线路,尽可能多地讲解配置参数的意义及之间的关系。在掌握足够多的知识点后建立起对微服务分布式架构的认知,以便为探求更深层次的知识点做好铺垫。

猜你喜欢

转载自blog.csdn.net/ckwer2008/article/details/84869467