大型网站技术架构:核心原理与案例分析
电子书推荐
-
《大型网站技术架构 核心原理与案例分析》李智慧.pdf 评分:
第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
上传时间:2016-10 大小:44.85MB
- 37.71MB
[高清]大型网站技术架构 核心原理与案例分析+李智慧.pdf
2018-04-19大型网站技术架构,电子版本,十分清晰。理论较多,适合初学者。
- 36.63MB
大型网站技术架构_核心原理与案例分析_李智慧PDF高清
2016-03-25大型网站技术架构_核心原理与案例分析_李智慧 PDF 高清
- 70.29MB
大型网站技术架构 核心原理与案例分析 高清完整版 李智慧.pdf
2018-01-05大型网站技术架构:核心原理与案例分析 本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚走向成熟稳定的历程。 没有晦涩难懂的术语,没有诘屈聱牙的文句,没有故弄玄虚的观点…… 明明白白的语句,清清楚楚的文法,干净利落的建议——让读者直接体会网站架构的紧要处,不容马虎的关键点——这恰好是一个优秀的网站架构 所必备的要素。 如果说“水不在深,有龙则灵”,那么对于想了解网站架构的读者而言,这本书恰好是“书不在多,有它则行!”
- 44.80MB
大型网站技术架构_核心原理与案例分析_李智慧.pdf
2018-04-04大型网站技术架构_核心原理与案例分析_李智慧.pdf
- 36.37MB
大型网络技术架构-李智慧
2018-05-02大型网站技术架构_核心原理与案例分析_李智慧.pdf
- 54.42MB
大型网站技术架构-核心原理与案例分析 李智慧
2019-04-11大型网站技术架构-核心原理与案例分析。作者:李智慧。 本书作者是阿里巴巴网站构建的亲历者,拥有核心技术部门的一线工作经验,直接体验了大型网站构建与发展过程中的种种生与死,蜕与变,见证了一个网站架构从幼稚...
- 70.23MB
大型网站技术架构:核心原理与案例分析.pdf
2021-03-17大型网站技术架构_核心原理与案例分析-李智慧
- 64B
大型网站技术架构_核心原理与案例分析-李智慧(pdf电子书)
2018-08-26大型网站技术架构_核心原理与案例分析-李智慧(pdf电子书),此书仅用于学习,请勿用于商用,感谢合作
- 37.75MB
大型网站技术架构核心原理与案例分析高清_李智慧.pdf
2018-04-06大型网站技术架构:核心原理与案例分析通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,为读者呈现一幅包括技术选型、架构...
- 44.87MB
大型网站技术架构——核心原理与案例分析_李智慧
2020-10-26讲解高并发访问下的网站发展变迁,对常用的网站技术进行了深入浅出的分析罗列,内容通俗易懂,而且对架构师的领导艺术进行了介绍,值得一读
- 36.64MB
大型网站技术架构 核心原理与案例分析+李智慧-高清
2018-10-09大型网站技术架构 核心原理与案例分析+李智慧-高清 PDF 带目录
- 36.63MB
大型网站技术架构 核心原理与案例分析
2017-10-18大型网站技术架构 核心原理与案例分析 pdf 版本 作者李智慧
- 164.91MB
最新Java JDK 8安装版(Windows 64位)
2021-02-26资源内容直接来自官网,没有添加任何其它额外内容;旨在便捷地获取最新版的Java API(避免因地域原因被限制访问,因网络原因无法稳定有效下载等情况)
- 1.28MB
阿里巴巴Java开发手册(终极版).pdf
2022-01-18阿里巴巴Java开发手册(终极版).pdf
- 211KB
牛客练习题.txt
2021-05-12JAVA练习题
- 9.12MB
aspose-words.zip
2021-12-09aspose-words资源含xml
- 210.91MB
jdk-8u241-windows-x64.exe
2020-01-16JDK的版本1.8.0 JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。 SE(JavaSE),standard edition,标准版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。
- 190.39MB
jdk11 免费下载 / 版本号 jdk11.0.4.zip
2021-10-15jdk11的官网版本免费下载,官网下载网络延迟大,该文档可直接从官网下载
- 55.85MB
JDk11API中文帮助文档.zip / 免费下载
2021-10-15jdk11中文帮助文档,免费下载
- 2.8MB
45套java程序员简历模板
2019-03-15有一年经验的模板,也有多年经验的模板,共计java45套简历模板,应对各个时期的java程序员!!!!
- 355KB
基于SpringBoot+Vue实现增删改查和分页查询DEMO(源码+数据库)
2023-04-17springboot项目,基于SpringBoot+Vue实现增删改查分页DEMO(源码+数据库) 技术栈 数据库:MySQL 后端框架:SpringBoot+Spring Data JPA 前端框架:Vue-ElementUI
- 5.20MB
java学生成绩管理系统(GUI+Excel).zip
2021-07-08javaSwing编写的学生成绩管理系统,GUI界面,实现了增删改查、表格排序等功能,详情请看我的博客 https://blog.csdn.net/qq_52889967/article/details/118581246
- 168.33MB
windows系统Java JDK8安装包
2022-02-05windows系统下的Java JDK8安装包,安装时请参考
- 17.90MB
基于JavaWeb的SSM的音乐网站(源码+数据库+报告)开源项目.zip
2020-10-07系统测试报告 问题一、环境配置复杂 Spring框架是基于java开发的框架,相比于ThinkPHP框架,单从文件大小来看就相差几十M,配置起来也是非常麻烦。 Spring框架并没有像XAMPP一样的集成环境的软件可以选用,因此数据库和服务器都必须独立安装。Spring框架相比于HTML文件更加支持jsp文件,因此服务器的选择上选择了Tomcat进行开发。数据库需要本地安装并且配置好Mysql。 Eclipse有专门针对java web开发的版本,因此选用Eclipse Java EE IDE for Web Developers 4.3.2 问题二、编码问题 Spring框架对编码问题的解
- 23.20MB
javaweb项目 网上订餐系统(完整源码)
2020-02-24完整的javaweb项目,有很大的参考价值,对学习java有很大帮助!
- 571KB
10.4版本libcms.so文件
2020-08-1410.4版本libcms.so文件,so文件是unix(一个系统的名字)的动态连接库,是二进制文件,作用相当于windows下的.dll文件
- 61.20MB
labuladong 的算法小抄最新版.zip
2020-12-10GitHub 上标星 74k 的算法小抄,labuladong 出品,绝壁精品。总共 60 多篇,基于 LeetCode 的题目,涵盖了所有题型和技巧,而且做到了举一反三、通俗易懂,绝不是简单的代码堆砌。
- 247KB
Java后端技术体系-按照学习顺序梳理-韩顺平.xmind
2021-10-31该思维导图是根据B站韩顺平老师的Java后端学习路线的课程整理的。 课程地址:https://www.bilibili.com/video/BV14K4y177Qk