分布式服务器的基本原理,分布式微服务架构:原理与实战

本词条缺少概述图,补充相关内容使词条更完整,还能快速升级,赶紧来编辑吧!

《分布式微服务架构:原理与实战》是清华大学出版社于2019年11月1日[1]

出版的图书[1]

,作者是黄文毅[1]

书    名

分布式微服务架构:原理与实战

作    者

黄文毅

出版社

清华大学出版社出版时间

2019年11月01日

定    价

89 元

ISBN

9787302537816

印刷日期

2019.09.26

分布式微服务架构:原理与实战出版信息

编辑

语音

分布式微服务架构:原理与实战

出版日期:2019.11.01

印刷日期:2019.09.26

出版社:清华大学出版社[1]

分布式微服务架构:原理与实战内容简介

编辑

语音

随着互联网技术的发展,系统架构由单体架构、垂直MVC架构、SOA服务化、分布式服务演变到分布式微服务架构,这是互联网企业架构的必经之路。分布式微服务架构涵盖的技术面广,知识点多。本书旨在让更多计算机从业者熟悉一个完整的分布式微服务架构所涉及的基础概念、涵盖的技术以及实战开发。本书蕴含的知识体系甚广,第1~2章主要讲解架构是如何向前演化发展的以及阅读本书之前需要准备的环境。第3~5章主要讲解服务之间的RPC调用、通信协议等。第6~7章主要讲解服务路由以及服务注册中心的原理和实践。第8章主要讲解服务调用。第9章主要讲解服务容器化以及如何部署和发布服务。第10~11章主要讲解服务限流、降级、容错以及熔断等技术。[1]

分布式微服务架构:原理与实战图书目录

编辑

语音

第1章 从架构演进启程 1

1.1 水平分层架构 1

1.1.1 应用架构概述 1

1.1.2 MVC架构/水平分层架构 2

1.2 SOA服务化架构 3

1.2.1 SOA概述 4

1.2.2 SOA的特征 4

1.2.3 SOA面临的问题 5

1.3 分布式微服务架构 5

1.3.1 微服务概述 5

1.3.2 SOA与微服务 5

1.3.3 微服务架构的特点 6

1.3.4 微服务架构的缺点 6

1.3.5 微服务架构全景图 7

1.3.6 微服务类型 8

1.3.7 微服务拆分原则与步骤 9

第2章 微服务开发框架 11

2.1 环境准备 11

2.1.1 安装JDK 11

2.1.2 安装 Intellij IDEA 14

2.1.3 安装 Apache Maven 14

2.2 一分钟快速搭建Spring Boot项目 15

2.2.1 使用Spring Initializr新建项目 15

2.2.2 测试 18

2.3 Spring Boot简单介绍 18

2.3.1 Spring Boot核心功能及特性 19

2.3.2 Spring Boot的缺点 20

2.4 Spring Boot目录介绍 20

2.4.1 Spring Boot工程目录 20

2.4.2 Spring Boot入口类 21

2.4.3 Spring Boot测试类 22

2.4.4 pom文件 23

2.5 Spring Boot生产级特性...[1]

2.5.1应用监控 24

2.5.2健康检查 28

2.5.3跨域访问 29

2.5.4外部配置 30

第3章分布式RPC框架 31

3.1RPC框架概述 31

3.1.1RPC的定义 31

3.1.2RPC核心组件 31

3.1.3RPC调用过程 32

3.1.4RPC框架调用分类 33

3.1.5RPC框架性能 35

3.1.6RPC框架与分布式服务框架 35

3.2RPC框架 36

3.2.1RMI远程方法调用 36

3.2.2Thrift 37

3.2.3Hessian 38

3.2.4Avro-RPC 38

3.2.5gRPC 38

3.2.6其他RPC框架 39

第4章序列化与反序列化 40

4.1序列化与反序列化 40

4.1.1序列化/反序列化概念 40

4.1.2序列化/反序列化特性 41

4.2常用序列化框架 41

4.2.1Java默认序列化 41

4.2.2XML序列化框架 46

4.2.3JSON序列化框架 48

4.2.4ProtoBuf序列化框架 50

第5章微服务底层通信与协议 54

5.1Java网络通信 54

5.1.1传统BIO编程 54

5.1.2伪异步I/O编程 60

5.1.3NIO编程 62

5.2Netty框架 78

5.2.1Netty概述 78

5.2.2第一个Netty应用程序 78

5.2.3Netty架构设计 84

5.3分布式服务框架协议 89

5.3.1主流公有协议 89

5.3.2私有协议设计 90

第6章服务路由与负载均衡 94

6.1服务路由概述 94

6.1.1服务路由的定义 94

6.1.2服务信息存放方式 94

6.2负载均衡概述 95

6.2.1Nginx的定义 95

6.2.2负载均衡的实现 95

6.2.3负载均衡算法 98

第7章微服务注册中心 103

7.1了解微服务注册中心 103

7.1.1注册中心几个概念 103

7.1.2注册中心 104

7.2ZooKeeper实现服务注册中心 104

7.2.1ZooKeeper概述 104

7.2.2ZooKeeper的原理 105

7.2.3ZooKeeper的安装 106

7.2.4ZooKeeper搭建集群环境 109

7.2.5ZooKeeper集群总体架构 110

7.2.6命令行客户端zkCli.sh 112

7.2.7ZkClient连接ZooKeeper 116[2]

7.2.8ZooKeeper实现服务注册与发现 120

第8章微服务框架服务调用与容错 122

8.1服务调用概述 122

8.2服务调用方式 123

8.2.1同步服务调用 123

8.2.2异步服务调用 125

8.2.3并行服务调用 130

8.2.4泛化调用 132[2]

第9章分布式微服务封装与部署 133

9.1微服务封装技术 133

9.1.1Docker概述 133

9.1.2Docker的基本概念 135

9.1.3Docker架构 135

9.1.4Docker的安装 137

9.1.5Docker的常用命令 138[2]

9.1.6制作镜像 142

9.1.7使用Dockerfile构建镜像 144

9.1.8SpringBoot集成Docker 147

9.2微服务部署概述 150

9.2.1蓝绿部署 150

9.2.2滚动发布 152

9.2.3灰度发布/金丝雀部署 154[2]

第10章分布式服务限流 155

10.1服务限流概述 155

10.1.1限流定义 155

10.1.2限流算法 155

10.2限流设计 157

10.2.1限流设计原理 157

10.2.2分级限流 158[2]

第11章服务降级、熔断、调度 159

11.1服务降级概述 159

11.2服务降级方式 159

11.2.1服务降级开关 159

11.2.2自动降级 160

11.2.3读服务降级 161

11.2.4写服务降级 161

11.3服务容错策略 161[2]

11.3.1失败转移(Failover) 162

11.3.2失败自动恢复(Failback) 162

11.3.3快速失败(Failfast) 162

11.3.4失败缓存(FailCache) 162

11.4Hystrix降级、熔断 162

11.4.1Hystrix简介 162[2]

11.4.2Hystrix实现降级/熔断 164

11.5服务优先级设计 165

11.5.1服务实例数量调整 165

11.5.2加权优先级队列 166

11.5.3线程调度器 167[2]

第12章服务版本与服务发布 168

12.1服务概述 168

12.2服务版本 168

12.2.1服务版本概述 168

12.2.2Snapshot和Release 169

12.3服务发布 169

12.3.1服务发布概述 169[2]

12.3.2服务发布方式 170

第13章分布式微服务日志中心 173

13.1分布式日志概述 173

13.1.1结构化日志/非结构化日志 173[2]

13.1.2日志类型 175

13.2日志框架 175

13.2.1JDKLogger 175

13.2.2ApacheCommonsLogging 177

13.2.3Log4j/Log4j2 177

13.2.4SpringBoot集成Log4j 179

13.2.5Docker日志框架 181[2]

13.2.6Linux系统Syslog 183

13.3搭建日志中心 183

13.3.1ELK概述 183

13.3.2Elasticsearch日志存储 184

13.3.3Logstash日志收集 189

13.3.4Fluentd日志收集 191

13.3.5Kibana日志查询 193

13.3.6ELK架构与Docker整合 194[2]

13.3.7ELK架构原理 195

第14章分布式微服务监控 197

14.1分布式服务架构监控 197

14.1.1监控的价值 197

14.1.2监控的完整体系 197

14.1.3微服务监控类型 198

14.1.4SpringBoot应用监控 198[2]

14.1.5SpringBootAdmin监控系统 201

14.2搭建系统监控中心 206

14.2.1概述 206

14.2.2时序数据收集系统:cAdvisor 206

14.2.3时序数据存储系统:InfluxDB 209

14.2.4时序数据分析系统:Grafana 212

14.2.5集成InfluxDB+cAdvisor+Grafana 214[2]

第15章分布式微服务配置中心 218

15.1配置中心概述 218

15.1.1配置概述 218

15.1.2配置中心解决问题 218

15.1.3全局配置 219

15.1.4配置中心 221[2]

15.2SpringCloudConfig 223

15.2.1SpringCloudConfig概述 223

15.2.2SpringCloudConfig快速入门 224[2]

第16章分布式微服务存储与解耦 232

16.1分布式数据库架构 232

16.1.1分库 232

16.1.2分表 233

16.1.3水平切分的方式 233[2]

16.1.4垂直切分的方式 235

16.1.5分组 235

16.1.6Mycat分库分表实战 236

16.1.7Spring+MyBatis+Mycat快速体验 240[2]

16.2分布式事务 249

16.2.1数据库事务 249

16.2.2分布式事务 249

16.2.3CAP定理 250

16.2.4BASE理论 251[2]

16.2.5两阶段提交(2PC) 252

16.2.6补偿事务(TCC) 252

16.2.7后置提交 254

16.2.8本地消息表(异步确保) 255

16.3分布式缓存架构 256

16.3.1Memcache与Redis 256[2]

16.3.2进程内缓存 257

16.3.3Redis单节点安装 259

16.3.4Redis持久化策略 260

16.3.5Redis主从复制模式 263

16.3.6Redis哨兵模式 266[2]

16.3.7 Redis哨兵模式安装部署271

16.3.8 Redis集群模式277[2]

16.3.9 Redis集群环境搭建280

16.3.10 Redis缓存穿透和雪崩288[2]

16.4 微服务解耦294

16.4.1 服务解耦概述294[2]

16.4.2 Kafka介绍295[2]

16.4.3 Kafka安装299[2]

参考资料

1.

分布式微服务架构:原理与实战

.清华大学[引用日期2019-10-31]

2.

2

.2[引用日期2019-11-01]

你可能感兴趣的:(分布式服务器的基本原理)