《高扩展性网站的50条原则》
基本信息
原书名:Scalability Rules: 50 Principles for Scaling Web Sites
作者: (美)Martin L.Abbott Michael T.Fisher [作译者介绍]
译者: 张欣 杨海玲
丛书名: 图灵程序设计丛书
出版社:人民邮电出版社
ISBN:9787115275721
上架时间:2012-5-22
出版日期:2012 年6月
开本:16开
页码:1
版次:1-1
所属分类: 计算机 > 计算机网络 > Web Server
> 综合
更多详情 》》》《高扩展性网站的50条原则》
内容简介
计算机书籍
《高扩展性网站的50条原则》减少dns
查找、尽可能减少对象等,每个原则都与不同的主题绑定在一起。大部分原则是面向技术的,只有少量原则解决的是与关键习惯和方法有关的问题,当然,每个原则都对构建可扩展的产品至关重要。
《高扩展性网站的50条原则》适合各层次web 开发人员阅读。
目录回到顶部↑《高扩展性网站的50条原则》
第1章 化简方程 1
1.1 原则1:不要过度设计 2
1.2 原则2:设计时就考虑扩展性(d-i-d方法) 6
1.2.1 设计 7
1.2.2 实现 8
1.2.3 部署 8
1.3 原则3:把方案一简再简 10
1.3.1 如何简化范围 10
1.3.2 如何简化设计 11
1.3.3 如何简化实施 12
1.4 原则4:减少dns查找 13
1.5 原则5:尽可能减少对象 16
1.6 原则6:使用同一品牌的网络设备 19
1.7 小结 21
参考资料 21
第2章 分布工作 23
2.1 原则7:横向复制(x轴原则) 25
2.2 原则8:拆分不同的东西(y轴原则) 29
2.3 原则9:拆分相近的东西(z轴原则) 32
.2.4 小结 34
参考资料 34
第3章 横向扩展设计 35
3.1 原则10:设计横向扩展方案 36
3.2 原则11:采用经济型系统 39
3.3 原则12:横向扩展数据中心 42
3.4 原则13:利用云技术进行设计 48
3.5 小结 50
参考资料 50
第4章 使用正确的工具 51
4.1 原则14:合理使用数据库 52
4.2 原则15:防火墙,到处都是防火墙 59
4.3 原则16:积极利用日志文件 63
4.4 小结 66
参考资料 66
第5章 不要重复工作 67
5.1 原则17:不要立即检查刚做过的工作 68
5.2 原则18:停止重定向 72
5.3 原则19:放松时序约束 77
5.4 小结 80
参考资料 80
第6章 积极利用缓存 81
6.1 原则20:利用cdn 82
6.2 原则21:使用过期头 85
6.3 原则22:缓存ajax调用 90
6.4 原则23:利用页面缓存 95
6.5 原则24:利用应用缓存 98
6.6 原则25:利用对象缓存 102
6.7 原则26:把对象缓存放在自己的“层”上 105
6.8 小结 107
参考资料 107
第7章 从错误中吸取教训 109
7.1 原则27:积极地学习 110
7.2 原则28:不要依靠qa发现失误 113
7.3 原则29:没有回退功能的设计是失败的设计 117
7.4 原则30:讨论失败并从中吸取教训 120
7.5 小结 124
参考资料 124
第8章 数据库原则 125
8.1 原则31:注意代价高的关系 126
8.2 原则32:使用类型正确的数据库锁 130
8.3 原则33:不要使用多阶段提交 133
8.4 原则34:不要使用select for update 135
8.5 原则35:不要选择所有数据 137
8.6 小结 140
参考资料 140
第9章 容错设计与故障控制 141
9.1 原则36:采用隔离故障的“泳道” 142
9.2 原则37:绝对不要信任单点故障 148
9.3 原则38:避免系统串联 151
9.4 原则39:确保能够启用/禁用功能 155
9.5 小结 158
第10章 避免或分发状态 159
10.1 原则40:努力实现无状态 161
10.2 原则41:尽可能在浏览器端维护会话 164
10.3 原则42:利用分布式缓存存放状态 167
10.4 小结 170
参考资料 170
第11章 异步通信和消息总线 171
11.1 原则43:尽可能使用异步通信 172
11.2 原则44:确保消息总线能够扩展 175
11.3 原则45:避免让消息总线过度拥挤 179
11.4 小结 182
第12章 其他原则 183
12.1 原则46:慎用第三方解决方案扩展 184
12.2 原则47:清除、归档和成本合理的存储 187
12.3 原则48:删除事务处理中的商业智能 192
12.4 原则49:设计能够监控的应用 195
12.5 原则50:要能胜任 199
12.6 小结 202
参考资料 202
第13章 原则回顾和优先级划分 203
13.1 评估扩展项目和主动权的风险?收益模型 204
13.2 扩展原则的收益/优先级等级 235
13.3 小结 238
本图书
信息来源:中国互动出版网
分享到:
相关推荐
《高扩展性网站的 50 条原则》是一本深度探讨互联网系统设计与优化的专业书籍,主要关注如何构建能够处理大规模流量、高并发访问、并保持高效稳定性的网站架构。书中提出的五十条原则,涵盖了从系统设计到运维实践的...
实现拥抱变化的方式很多,设计大师们为我们总结出23种设计模式,但是在项目实践中有效地使用设计模式是个难题,因此大部分业务设计很难采用它们来实现,我们在项目中尽量采用这六大设计原则,经常使用这些原则来检验...
通过遵循单一职责原则、使用接口与抽象类、模块化与分层设计以及合适的设计模式,可以有效提高软件系统的可维护性和可扩展性。此外,通过弹性架构、微服务架构、事件驱动架构和数据驱动设计等技术手段,可以帮助系统...
- **模块化**:将系统划分为若干个模块,每个模块执行特定的功能,实现高内聚(紧密相关)低耦合(相互依赖程度低),有助于提高系统的可维护性和可扩展性。 - **抽象化**:提炼出系统的关键特征,隐藏不必要的细节...
演讲首先介绍了高可用性和高扩展性的概念,并阐述了它们对于现代分布式系统的重要性。随着数据量的增加和技术的发展,确保系统不仅能够高效处理当前需求,还能在未来面临更大负载时保持稳定运行成为了一个重要的议题...
《构建高性能可扩展ASP.NET网站》第1章原则和方法,本章首先从性能和可扩展性的差异谈起,接着谈一谈我对高性能和高可扩展性的理解。然后我从一个较高的层次来讲解网页生成的完整过程,并且描述一些核心原则,这些...
构建一个高可用性高扩展性的系统是现代信息技术领域中的核心挑战之一。这涉及到设计和实施一系列策略,确保系统能够在各种情况下保持稳定运行,并且能够随着业务需求的增长进行灵活扩展。 **1. 高可用性** 高可用...
总结来说,软件可扩展性实践是软件工程中的一项关键任务,它要求我们在设计阶段就充分考虑到未来可能的需求变化,采用如OCP这样的设计原则,确保软件系统在扩展时的效率和稳定性。通过合理的设计和模块化策略,我们...
这样可以提高系统的灵活性和可扩展性。 3. 硬件结构的设计需要结合应用软件方案一同考虑。硬件结构与软件方案之间存在相互影响,通常的原则是尽量让软件来实现那些软件能够处理的功能,以此来简化硬件结构。但要...
总结来说,《软件可扩展性实践PPT课件》为软件设计者提供了一套实用的工具和方法论,帮助他们在软件开发的全过程中,从设计到实现,始终贯彻软件可扩展性的原则。通过理论知识与实际案例相结合的方式,课件深入浅出...
开闭原则是面向对象设计的基本原则之一,旨在提高软件的可扩展性和可维护性,降低软件的设计复杂度和耦合度。 替换原则(LSP) 替换原则(LSP)是面向对象设计的五个基本原则之一。该原则规定,子类应当可以替换...
现在设计的网络不仅要满足当前应用,还需要保证其今后相当一段时间内能为网络提供有效的网络平台和资源平台,所以在设计时必须考虑其扩展性和开放性。除当前设计需含有一定的超前性外,还需保留系统的可扩充性(如...
这些原则的应用可以显著提高软件系统的扩展性。此外,还有多种设计模式可以帮助实现扩展性,例如: - **工厂模式**:用于创建对象而不暴露创建逻辑,便于增加新的对象类型。 - **单例模式**:确保一个类只有一个...
系统总体设计原则是信息化项目设计的核心原则,它涵盖了统一设计原则、先进性原则、高可靠/高安全性原则、标准化原则、成熟性原则、适用性原则和可扩展性原则等七条原则,这些原则将指导信息化项目的设计和实施。
面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它通过将数据和操作数据的方法封装在类中,实现了...遵循这些原则可以增强代码的灵活性,减少维护成本,提升软件的可扩展性和可复用性。
eBay作为一个全球领先的在线交易平台,其庞大的交易量和复杂多变的业务场景对系统的扩展性和灵活性提出了极高要求。eBay通过实施SOA,不仅实现了内部系统的高效集成,还开放了丰富的API供外部开发者调用,从而极大地...
#### 第三章:软件可扩展性设计原则 **单一职责原则**:强调每个类或组件应当只负责一种类型的功能,有助于提高代码的可读性和可维护性,同时也便于功能的扩展。 **开闭原则**:主张软件实体(如类、模块、函数等...