欲穷千里目,更上一层楼。
--王之涣
:

高扩展性网站的50条原则

高扩展性网站的50条原则

作者: [美] Martin L. Abbott

出版社: 人民邮电出版社

出版时间: 2012-6-3

价格: 35.00元

ISBN: 9787115275721

【🔥扫码右侧二维码】

【📱扫码极速下载】浏览器自动唤起

💎独家资源·限时共享

作者简介:

作者简介: Martin L. Abbott 业界资深管理者,曾参与管理过多家世界500强企业和创业公司。AKF Partners公司创始人。曾任Quigo公司首席运营官(该公司后被AOL收购),eBay公司高级副总裁和首席技术官,还曾在Gateway和摩托罗拉担任重要职位。现任多家技术公司董事,多所高校、公共机构以及私企的咨询顾问。Martin分别于西点军校和佛罗里达大学取得计算机学士和硕士学位,并参加过哈佛大学商学院高级经理培训,目前在西储大学攻读博士学位。 Michael T. Fisher 业界资深管理者,曾参与管理过多家世界500强企业和创业公司。AKF Partners公司创始人。曾任Quigo公司首席技术官、总裁,PayPal公司工程和架构部门副总裁。曾在通用电器工作7年,帮助制定公司的技术战略。目前担任多家私企和非营利机构的董事和顾问。Michael毕业于西点军校,是六西格玛黑带大师,目前在西储大学攻读博士学位。

内容简介:

《高扩展性网站的50条原则》给出了设计高扩展网站的50条原则,如不要过度设计、设计时就考虑扩展性、把方案简化3倍以上、减少DNS查找、尽可能减少对象等,每个原则都与不同的主题绑定在一起。大部分原则是面向技术的,只有少量原则解决的是与关键习惯和方法有关的问题,当然,每个原则都对构建可扩展的产品至关重要。 主要内容包括: 通过克隆、复制、分离功能和拆分数据集提高网站扩展性; 采用横向扩展方案代替纵向扩展; 在不损害网站可扩展性的前提下,最大程度地利用数据库; 避免不必要的重定向和冗余的二次检查; 在不引入复杂性的前提下,更加充分地使用缓存和内容分发网络; 要求网站设计具备容错、优雅降级和易回滚的功能; 设计系统时尽可能选择无状态实现,如果确实需要状态,做到合理高效; 有效利用异步通信; 无论你的网站刚刚起步,还是正在设计开发过程中,或者已经成熟运转了很长时间,你都能从书中找到很有针对性的指导原则,提高网站的可扩展性。

目录:

目    录 第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

相关推荐

追问
2025-03-04 9.3k
长安的荔枝
2025-03-05 4.8k

评论

暂无评论
登录发表评论