大型分布式网站架构设计与实践.pdfVIP

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
II SOA CIP / . 2014.9 ISBN 978-7-121-23885-7 . . . . TP393.092 CIP 2014 169308 173 100036 787 980 1/16 28.75 640 2014 9 1 2014 9 1 79.00 010 zlts@ dbqq@phei. 010 r e t p a h c 第 2 章 分布式系统基础设施 第 2 章 分布式系统基础设施 │ 59 一个大型、稳健、成熟的分布式系统的背后,往往会涉及众多的支撑系统,我们将这些支 撑系统称为分布式系统的基础设施。除了前面所介绍的分布式协作及配置管理系统 ZooKeeper, 我们进行系统架构设计所依赖的基础设施,还包括分布式缓存系统、持久化存储、分布式消息 系统、搜索引擎,以及 CDN 系统、负载均衡系统、运维自动化系统等,还有后面章节所要介 绍的实时计算系统、离线计算系统、分布式文件系统、日志收集系统、监控系统、数据仓库等。 分布式缓存主要用于在高并发环境下,减轻数据库的压力,提高系统的响应速度和并发吞 吐。当大量的读、写请求涌向数据库时,磁盘的处理速度与内存显然不在一个量级,因此,在 数据库之前加一层缓存,能够显著提高系统的响应速度,并降低数据库的压力。 作为传统的关系型数据库,MySQL 提供完整的 ACID 操作,支持丰富的数据类型、强大的 关联查询、where 语句等,能够非常容易地建立查询索引,执行复杂的内连接、外连接、求和、 排序、分组等操作,并且支持存储过程、函数等功能,产品成熟度高,功能强大。但是,对于 需要应对高并发访问并且存储海量数据的场景来说,出于对性能的考虑,不得不放弃很多传统 关系型数据库原本强大的功能,牺牲了系统的易用性,并且使得系统的设计和管理变得更为复 杂。这也使得在过去几年中,流行着另一种新的存储解决方案——NoSQL,它与传统的关系型 数据库最大的差别在于,它不使用 SQL 作为查询语言来查找数据,而采用 key-value 形式进行 查找,提供了更高的查询效率及吞吐,并且能够更加方便地进行扩展,存储海量数据,在数千 个节点上进行分区,自动进行数据的复制和备份。 在分布式系统中,消息作为应用间通信的一种方式,得到了十分广泛的应用。消息可以被 保存在队列中,直到被接收者取出,由于消息发送者不需要同步等待消息接收者的响应,消息 的异步接收降低了系统集成的耦合度,提升了分布式系统协作的效率,使得系统能够更快地响 应用户,提供更高的吞吐。当系统处于峰值压力时,分布式消息队列还能够作为缓冲,削峰填 谷,缓解集群的压力,避免整个系统被压垮。 垂直化的搜索引擎在分布式系统中是一个非常重要的角色,它既能够满足用户对于全文检 索、模糊匹配的需求,解决数据库 like 查询效率低下的问题,又能够解决分布式环境下,由于 采用分库分表,或者使用 NoSQL 数据库,导致无法进行多表关联或者进行复杂查询的问题。 本章主要介绍和解决如下问题:  分布式缓存 memcache 的使用及分布式策略,包括 Hash 算法的选择。  常见的分布式系统存储解决方案,包括 MySQL 的分布式扩展、HBase 的 API 及使用 场景、Redis 的使用等。  如何使用分布式消息系统 ActiveMQ 来降低系统之间的耦合度,以及进行应用间的通信。  垂直化的搜索引擎在分布式系统中的使用,包括搜索引擎的基本原理、Lucene 详细的 使用介绍,以及基于 Lucene 的开源搜索引擎工具 Solr 的使用。 60 │ 大型分布式网站架构设计与实践 2.1 分布式缓存

您可能关注的文档

文档评论(0)

7号仓库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档