概述

你在本书可以学到什么?

大型网站技术架构的整体认知,大型网站架构演进历程,常用的架构模式,大型网站的高可用、高性能、伸缩性、可扩展、安全性,具体案例分析和架构师修养。

推荐本书的原因是:你在阅读完本书后在认知层面有一个新的高度。(文末附有下载入口)

在书中我非常喜欢的一句话:每个人都是为了实现自我价值而努力,不是为了领工资而工作。

内容简介

《大型网站技术架构:核心原理与案例分析》通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,为读者呈现一幅包括技术选型、架构设计、性能优化、Web 安全、系统发布、运维监控等在内的大型网站开发全景视图。

《大型网站技术架构:核心原理与案例分析》不仅适用于指导网站工程师、架构师进行网站技术架构设计,也可用于指导产品经理、项目经理、测试运维人员等了解网站技术架构的基础概念;还可供包括企业系统开发人员在内的各类软件开发从业人员借鉴,了解大型网站的解决方案和开发理念。

目录

第1篇 概述

1 大型网站架构演化 2

1.1 大型网站软件系统的特点 3

1.2 大型网站架构演化发展历程 4

1.2.1 初始阶段的网站架构 4

1.2.2 应用服务和数据服务分离 4

1.2.3 使用缓存改善网站性能 5

1.2.4 使用应用服务器集群改善网站的并发处理能力 6

1.2.5 数据库读写分离 7

1.2.6 使用反向代理和CDN加速网站响应 8

1.2.7 使用分布式文件系统和分布式数据库系统 9

1.2.8 使用NoSQL和搜索引擎 10

1.2.9 业务拆分 11

1.2.10 分布式服务 11

1.3 大型网站架构演化的价值观 13

1.3.1 大型网站架构技术的核心价值是随网站所需灵活应对 13

1.3.2 驱动大型网站技术发展的主要力量是网站的业务发展 13

1.4 网站架构设计误区 14

1.4.1 一味追随大公司的解决方案 14

1.4.2 为了技术而技术 14

1.4.3 企图用技术解决所有问题 14

1.5 小结 15

2 大型网站架构模式 16

2.1 网站架构模式 16

2.1.1 分层 17

2.1.2 分割 18

2.1.3 分布式 18

2.1.4 集群 19

2.1.5 缓存 20

2.1.6 异步 20

2.1.7 冗余 21

2.1.8 自动化 22

2.1.9 安全 23

2.2 架构模式在新浪微博的应用 23

2.3 小结 25

3 大型网站核心架构要素 26

3.1 性能 27

3.2 可用性 28

3.3 伸缩性 29

3.4 扩展性 30

3.5 安全性 30

3.6 小结 31

第2篇 架构

4 瞬时响应:网站的高性能架构 34

4.1 网站性能测试 35

4.1.1 不同视角下的网站性能 35

4.1.2 性能测试指标 36

4.1.3 性能测试方法 39

4.1.4 性能测试报告 41

4.1.5 性能优化策略 41

4.2 Web前端性能优化 42

4.2.1 浏览器访问优化 42

4.2.2 CDN加速 43

4.2.3 反向代理 44

4.3 应用服务器性能优化 45

4.3.1 分布式缓存 45

4.3.2 异步操作 52

4.3.3 使用集群 53

4.3.4 代码优化 54

4.4 存储性能优化 58

4.4.1 机械硬盘vs. 固态硬盘 58

4.4.2 B+树vs. LSM树 59

4.4.3 RAID vs. HDFS 61

4.5 小结 64

5 万无一失:网站的高可用架构 66

5.1 网站可用性的度量与考核 67

5.1.1 网站可用性度量 67

5.1.2 网站可用性考核 67

5.2 高可用的网站架构 69

5.3 高可用的应用 71

5.3.1 通过负载均衡进行无状态服务的失效转移 72

5.3.2 应用服务器集群的Session管理 73

5.4 高可用的服务 76

5.5 高可用的数据 78

5.5.1 CAP原理 79

5.5.2 数据备份 82

5.5.3 失效转移 84

5.6 高可用网站的软件质量保证 85

5.6.1 网站发布 85

5.6.2 自动化测试 86

5.6.3 预发布验证 87

5.6.4 代码控制 88

5.6.5 自动化发布 90

5.6.6 灰度发布 91

5.7 网站运行监控 91

5.7.1 监控数据采集 92

5.7.2 监控管理 93

5.8 小结 94

6 永无止境:网站的伸缩性架构 95

6.1 网站架构的伸缩性设计 97

6.1.1 不同功能进行物理分离实现伸缩 97

6.1.2 单一功能通过集群规模实现伸缩 98

6.2 应用服务器集群的伸缩性设计 99

6.2.1 HTTP重定向负载均衡 100

6.2.2 DNS域名解析负载均衡 101

6.2.3 反向代理负载均衡 102

6.2.4 IP负载均衡 103

6.2.5 数据链路层负载均衡 104

6.2.6 负载均衡算法 105

6.3 分布式缓存集群的伸缩性设计 106

6.3.1 Memcached分布式缓存集群的访问模型 107

6.3.2 Memcached分布式缓存集群的伸缩性挑战 107

6.3.3 分布式缓存的一致性Hash算法 109

6.4 数据存储服务器集群的伸缩性设计 112

6.4.1 关系数据库集群的伸缩性设计 113

6.4.2 NoSQL数据库的伸缩性设计 117

6.5 小结 119

7 随需应变:网站的可扩展架构 121

7.1 构建可扩展的网站架构 122

7.2 利用分布式消息队列降低系统耦合性 123

7.2.1 事件驱动架构 123

7.2.2 分布式消息队列 124

7.3 利用分布式服务打造可复用的业务平台 126

7.3.1 Web Service与企业级分布式服务 128

7.3.2 大型网站分布式服务的需求与特点 129

7.3.3 分布式服务框架设计 130

7.4 可扩展的数据结构 131

7.5 利用开放平台建设网站生态圈 132

7.6 小结 134

8 固若金汤:网站的安全架构 135

8.1 道高一尺魔高一丈的网站应用攻击与防御 136

8.1.1 XSS攻击 136

8.1.2 注入攻击 138

8.1.3 CSRF攻击 139

8.1.4 其他攻击和漏洞 140

8.1.5 Web应用防火墙 141

8.1.6 网站安全漏洞扫描 142

8.2 信息加密技术及密钥安全管理 142

8.2.1 单向散列加密 143

8.2.2 对称加密 144

8.2.3 非对称加密 144

8.2.4 密钥安全管理 145

8.3 信息过滤与反垃圾 146

8.3.1 文本匹配 147

8.3.2 分类算法 148

8.3.3 黑名单 149

8.4 电子商务风险控制 150

8.4.1 风险 151

8.4.2 风控 151

8.5 小结 153

第3篇 案例

9 淘宝网的架构演化案例分析 156

9.1 淘宝网的业务发展历程 157

9.2 淘宝网技术架构演化 158

9.3 小结 162

10 维基百科的高性能架构设计分析 163

10.1 Wikipedia网站整体架构 163

10.2 Wikipedia性能优化策略 165

10.2.1 Wikipedia前端性能优化 165

10.2.2 Wikipedia服务端性能优化 166

10.2.3 Wikipedia后端性能优化 167

11 海量分布式存储系统Doris的高可用架构设计分析 169

11.1 分布式存储系统的高可用架构 170

11.2 不同故障情况下的高可用解决方案 171

11.2.1 分布式存储系统的故障分类 172

11.2.2 正常情况下系统访问结构 172

11.2.3 瞬时故障的高可用解决方案 173

11.2.4 临时故障的高可用解决方案 174

11.2.5 永久故障的高可用解决方案 175

12 网购秒杀系统架构设计案例分析 176

12.1 秒杀活动的技术挑战 177

12.2 秒杀系统的应对策略 177

12.3 秒杀系统架构设计 178

12.4 小结 182

13 大型网站典型故障案例分析 183

13.1 写日志也会引发故障 184

13.2 高并发访问数据库引发的故障 184

13.3 高并发情况下锁引发的故障 185

13.4 缓存引发的故障 185

13.5 应用启动不同步引发的故障 186

13.6 大文件读写独占磁盘引发的故障 186

13.7 滥用生产环境引发的故障 187

13.8 不规范的流程引发的故障 187

13.9 不好的编程习惯引发的故障 188

13.10 小结 188

第4篇 架构师

14 架构师领导艺术 190

14.1 关注人而不是产品 191

14.2 发掘人的优秀 191

14.3 共享美好蓝图 192

14.4 共同参与架构 193

14.5 学会妥协 194

14.6 成就他人 194

15 网站架构师职场攻略 196

15.1 发现问题,寻找突破 197

15.2 提出问题,寻求支持 199

15.3 解决问题,达成绩效 201

16 漫话网站架构师 203

16.1 按作用划分架构师 203

16.2 按效果划分架构师 204

16.3 按职责角色划分架构师 205

16.4 按关注层次划分架构师 205

16.5 按口碑划分架构师 206

16.6 非主流方式划分架构师 207

附录A 大型网站架构技术一览 208

附录B Web开发技术发展历程 215

后记 218

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

热门产品

大中专招生方法二:机器人电话外呼(ai外呼)人工智能外呼系统(含机器人话术模板)|大中专招生方法,机器人外呼,人工智能电话外呼,大专招生方法,中专招生方法,学校招生方法,中职招生方法,机器人话术模板,大中专,招生,方法,机器人,电话,外呼,ai外呼,人工智能,系统,机器,人话,模板
大中专招生方法二:机器人电话外呼(ai外呼)人工智能外呼系统(含机器人话术模板)

历史上的今天:04月28日

明确了!免费5天!

明确了!免费5天!近日交通运输部印发通知要求严格落实重大节假日免收小型客车通行费政策强化电子不停车收费(ETC)车道运行监测及时处置异常情况“五一”劳动节期间高速免费通行根据交通运输部发布的文件《重大节假日免收小型客车通行费实施方案》针对春节、清明节劳动节、国庆节四个重要节假日实施7座(包括7座)以下小型客车高速公路免费通行的政策免费时间4月29日00:00至5月3日24:00免费时段这样算普通收

高速免费!五一放假调休共5天,能跨省出行吗?

高速免费!五一放假调休共5天,能跨省出行吗?据《国务院办公厅关于2022年部分节假日安排的通知》,2022五一放假为:4月30日至5月4日放假调休,共5天。4月24日(星期日)、5月7日(星期六)上班。同时据国家《重大节假日免收小型客车通行费实施方案》规定,高速公路对小型客车(7座以下含7座载客车辆)免费的节日有春节、清明节、五一劳动节、国庆节。因此,在4月30日0时至5月4日24时,高速公路将免

如果30号晚上高速,1号凌晨下高速免费不?跨省的必须看

如果30号晚上高速,1号凌晨下高速免费不?跨省的必须看长假马上就要到了,这是大家问得最多的问题!今天就跟大家好好说道,上高速,这样才算免费!先来看下2017年中秋国庆高速公路免费时间:10月1日零点~10月8日24点。免收通行费时间以车辆驶离高速公路出口收费车道的时间为准。普通公路则以车辆通过收费站收费车道的时间为准。换言之,收费期间上高速公路,免费期间下高速公路,不会被收费。所以,如果30号晚上

高速公路免费时间?收费卡怎么办?跨省呢?

高速公路免费时间?收费卡怎么办?跨省呢?马上就要到国庆假期啦,这几天小编每天都收到很多关于高速免费的问题,除了大家最关心的免费时间、免费车型等等,小编今天也总结了一些干货,快来看吧~免费时间这是老生常谈了,今年国庆免费时间为10月1日0时至7日24时。免费通行的计费时间点,是以汽车驶出高速的时间点为准。 在非免费时段进入高速公路,但出高速的时候是

热门专题

昆明综合高中|昆明综合高中
昆明综合高中
小程序开发|微信小程序,小程序开发,小程序,小程序制作,微信小程序开发,小程序公司,小程序开发公司,分销,三级分销系统,分销系统
小程序开发
中源管业|中源管业,中源管业公司,中源管业有限公司,中源管业电话,中源管业地址,中源管业电力管,中源管业mpp电力管,中源管业cpvc电力管,中源管业pe穿线管
中源管业
云南综合高中|云南综合高中
云南综合高中
易捷尔单招|易捷尔单招,易捷尔单招培训,易捷尔单招报名,易捷尔单招考试,易捷尔单招培训学校,易捷尔单招分数
易捷尔单招
云南巨榕教育投资集团有限公司|云南巨榕教育投资集团有限公司,巨榕教育集团,巨榕教育
云南巨榕教育投资集团有限公司
开放大学|开放大学报名,开放大学报考,开放大学,什么是开放大学,开放大学学历,开放大学学费,开放大学报名条件,开放大学报名时间,开放大学学历,开放大学专业
开放大学
云南高职单招|云南单招,云南单招网,云南高职单招网,云南高职单招,云南单招学校,云南单招培训
云南高职单招

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部