Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

分布式应用系统架构设计与实践 谢文辉 PDF 下载


分享到:
时间:2024-04-27 09:26来源:http://www.java1234.com 作者:转载  侵权举报
随着互联网技术的发展,分布式应用系统对具备高性能、高可用性、可扩展性和可维护性的架构的依赖度越来越高。本书以理论与实践相结合的方式,对分布式应用系统的架构设计进行
失效链接处理
分布式应用系统架构设计与实践 谢文辉  PDF 下载 

下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版

用户下载说明:

电子版仅供预览,下载后24小时内务必删除,支持正版,喜欢的请购买正版书籍:
https://product.dangdang.com/11080766664.html
 

相关截图:




资料简介:
随着互联网技术的发展,分布式应用系统对具备高性能、高可用性、可扩展性和可维护性的架构的依赖度越来越高。本书以理论与实践相结合的方式,对分布式应用系统的架构设计进行系统、全面的阐述。本书分为3个部分,第一部分是分布式系统架构概述,介绍一些分布式系统架构下常见的基础概念和架构设计的目标;第二部分是核心理论及技术,介绍分布式应用系统下常见的技术中间件机制和使用场景,着重介绍分布式应用系统在高性能、高可用性、可扩展性和可维护性等方面常见的优化技术;第三部分是架构实践案例,梳理几种常见的大型分布式应用系统的架构,并结合具体问题进行分析,使读者能够真正理解设计分布式应用系统架构所面临的问题及解决问题的思路。 本书主要面向初/中/高级程序员和架构师,但书中的部分内容也适合产品经理、项目经理阅读。此外,本书内容由浅入深且案例丰富,也适合作为培训教材。


资料目录:
第 一部分 分布式系统架构概述
第 1章 架构的基础概念 3
1.1 架构的几个概念 3
1.1.1 系统与子系统 4
1.1.2 模块与组件 4
1.1.3 组件与框架 4
1.2 架构设计的目标 5
1.2.1 高性能 5
1.2.2 高可用性 6
1.2.3 可扩展性 7
1.2.4 可维护性 8
1.3 小结 9
第 2章 架构的演进 10
2.1 单体架构 10
2.2 分层架构 11
2.3 面向服务架构 12
2.4 微服务架构体系 14
2.4.1 微服务架构 14
2.4.2 服务网格架构 16
2.4.3 单元化架构 17
2.5 小结 18
第二部分 核心理论及技术
第3章 常见的基础组件 21
3.1 数据缓存 21
3.1.1 Redis高可用实现方案 22
3.1.2 Redis集群实现方案 24
3.1.3 Redis跨机房数据同步方案 29
3.2 数据分发 34
3.2.1 Kafka的分区机制及副本机制 34
3.2.2 Kafka高吞吐量实现方案 40
3.2.3 Kafka跨机房双活方案 44
3.3 数据存储 47
3.3.1 关系数据库MySQL 48
3.3.2 列式存储数据库HBase 49
3.3.3 文档型存储数据库MongoDB 51
3.3.4 图数据库Neo4j 54
3.3.5 内容搜索数据库Elasticsearch 57
3.4 服务远程调用 59
3.4.1 RPC架构及原理 59
3.4.2 Dubbo架构及原理 60
3.4.3 gRPC架构及原理 62
3.5 小结 63
第4章 高性能架构 64
4.1 基础概念 64
4.1.1 性能指标 64
4.1.2 利特尔法则 65
4.1.3 系统优化分析 65
4.1.4 系统指标选择 66
4.2 客户端及网络接入 66
4.2.1 浏览器访问优化 66
4.2.2 CDN缓存 68
4.2.3 反向代理 69
4.3 数据存储 71
4.3.1 数据库读写分离 71
4.3.2 数据库分库/分表 82
4.3.3 数据库如何实现平滑扩容 86
4.3.4 NoSQL综合解决方案 90
4.4 数据缓存 95
4.4.1 适合做缓存的场景 95
4.4.2 缓存穿透及解决方案 95
4.4.3 缓存雪崩及解决方案 97
4.4.4 缓存击穿及解决方案 97
4.4.5 如何保障缓存与数据库数据的一致性 100
4.5 业务逻辑 103
4.5.1 异步处理 103
4.5.2 消息队列 106
4.6 架构模式与负载均衡 106
4.6.1 多进程并发模式与多线程并发模式 107
4.6.2 阻塞与非阻塞I/O模式 107
4.6.3 负载均衡架构 109
4.7 小结 110
第5章 高可用架构 111
5.1 分布式系统的几个理论 111
5.1.1 CAP理论 111
5.1.2 BASE理论 114
5.2 数据存储层 116
5.2.1 双机架构 116
5.2.2 数据多副本 118
5.3 业务逻辑层 122
5.3.1 有状态和无状态 122
5.3.2 服务治理 124
5.3.3 服务降级 125
5.3.4 服务限流 130
5.4 多机房架构 133
5.4.1 多机房的几种架构 133
5.4.2 多机房多活架构 138
5.4.3 多机房流量分发 141
5.5 小结 143
第6章 可扩展架构 144
6.1 可扩展的几个维度 145
6.1.1 横向扩展 145
6.1.2 垂直扩展 146
6.1.3 纵深扩展 147
6.2 可扩展架构的实现 148
6.2.1 反向代理层 148
6.2.2 接入层 149
6.2.3 业务逻辑层 150
6.2.4 数据缓存层 152
6.2.5 数据存储层 152
6.3 几种典型可扩展架构 153
6.3.1 分层架构 153
6.3.2 服务化架构 153
6.3.3 单元化架构 154
6.4 小结 155
第7章 可维护架构 156
7.1 系统监控工具 156
7.1.1 Zabbix监控系统介绍 156
7.1.2 Prometheus介绍 158
7.1.3 中间件监控系统介绍 159
7.2 业务日志的监控及分析 162
7.2.1 日志采集及清洗 163
7.2.2 日志的传输及存储 165
7.2.3 日志查询及可视化 166
7.3 业务数据的安全监控及分析 167
7.3.1 数据安全防护方案 167
7.3.2 数据授权及审计系统 168
7.3.3 数据血缘追踪 169
7.4 小结 170
第三部分 架构实践案例
第8章 账号系统 173
8.1 系统整体架构 173
8.1.1 注册服务 173
8.1.2 认证服务 175
8.1.3 授权服务 176
8.2 关键问题及解决方案 177
8.2.1 如何解决会话粘连问题 177
8.2.2 如何实现数据一致性 181
8.2.3 如何实现安全降级 183
8.3 小结 184
第9章 秒杀系统 185
9.1 系统整体架构 185
9.1.1 接入网关 186
9.1.2 订单及库存服务 187
9.1.3 支付服务 189
9.2 关键问题及解决方案 190
9.2.1 如何优化流量金字塔模型 190
9.2.2 如何解决并发场景下的库存扣减一致性问题 191
9.2.3 如何提升热点账户的冲扣性能 193
9.3 小结 197
第 10章 消息推送系统 198
10.1 系统整体架构 198
10.1.1 业务接入层 199
10.1.2 通道层 200
10.1.3 客户端层 200
10.2 关键问题及解决方案 200
10.2.1 如何实现过载保护 201
10.2.2 如何提升消息分发性能 202
10.2.3 如何解决海量消息推送明细的存储问题 203
10.2.4 如何降低推送的客户端功耗 203
10.2.5 如何解决消息重复推送问题 204
10.2.6 如何解决海量长连接问题 205
10.2.7 如何解决客户端消息伪造问题 206
10.3 小结 206
第 11章 区块链系统 207
11.1 系统整体架构及优化 207
11.1.1 接入层 208
11.1.2 池化层及指令处理层 210
11.1.3 网络层 213
11.1.4 存储层 215
11.2 小结 216

 


------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐