- 1、本文档共71页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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 分布式缓存
您可能关注的文档
- IxD2013_C2_移动设备情景化体验设计_姜军军.pdf
- IxD2013_C4_以用户为中心的视觉设计_高峰.pdf
- Java并发程序设计教程.pdf
- Java经典资料汇总(面试题+教程+编程).pdf
- LetvUI 系统在超级电视的设计与实现 黄滔.pdf
- MDCC 2014 豌豆荚设计奖产品经理张慧迪—豌豆荚设计奖眼中的好产品.pdf
- MPI编程初步.pdf
- NoSQL技术在腾讯云上的应用.pdf
- os im 即时通讯:iOS即时语音聊天技术实践.pdf
- OSTC开源技术大会-蔡文智-Cocos2D-x与游戏开发.pdf
- 基于人工智能教育平台的移动应用开发,探讨跨平台兼容性影响因素及优化策略教学研究课题报告.docx
- 高中生物实验:城市热岛效应对城市生态系统服务功能的影响机制教学研究课题报告.docx
- 信息技术行业信息安全法律法规研究及政策建议教学研究课题报告.docx
- 人工智能视角下区域教育评价改革:利益相关者互动与政策支持研究教学研究课题报告.docx
- 6 《垃圾填埋场渗滤液处理与土地资源化利用研究》教学研究课题报告.docx
- 小学音乐与美术教师跨学科协作模式构建:人工智能技术助力教学创新教学研究课题报告.docx
- 《航空航天3D打印技术对航空器装配工艺的创新与效率提升》教学研究课题报告.docx
- 教育扶贫精准化策略研究:人工智能技术在区域教育中的应用与创新教学研究课题报告.docx
- 《区块链技术在电子政务电子档案管理中的数据完整性保障与优化》教学研究课题报告.docx
- 《中医护理情志疗法对癌症患者心理状态和生活质量提升的长期追踪研究》教学研究课题报告.docx
文档评论(0)