GemFire如何应对电商或移动APP平台的高负载挑战.pptx

GemFire如何应对电商或移动APP平台的高负载挑战.pptx

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GemFire如何应对电商或移动APP平台的高负载挑战 议题 • 拆分应用互联数据 • Web Server与GemFire进行集成 • Memcached、Redis与GemFire进行集成 • GemFire利用HDFS进行日志保存和处理 大规模扩展分布式缓存系统 借用Fac eB ook 的架构方式, 将页面的访问 进行拆分,保 存数据到多个 缓存集群中 应用间互联数据 • 拆分主页和其他页面的点击访问 • 数据不保存在单台服务器上,保存于多台服务器集群中 • 跨所有集群的服务器快速拉取数据到前端页面 应用大并发查询数据 • 为了在数据并发操作的情况下获得良好的性能,需要并行地转发 get请求 • 切换到异步I/O 进行访问 • 不同的Object有不同的大小和访问方式。构建memcached pools拆 分不同的objects类型,达到高效的内存利用率 解决前端连接拥塞问题 • web服务器连接到memcache服务器 • 每个web 服务器运行50-100个进程 • 每个memcache有100K+ TCP 连接(UDP 能够减少连接数量) •使用gzcompress压缩序列化的字符串 WebꢀServerꢀ与 Ge mFire 集成 1. GemFire采用C/S架构与Web Server进行交互,将GemFire客户端嵌入到 Web Server中,Web App 从GemFire客户端读写数据,然后客户端将读写 操作同步给GemFire Server Web服务器 + GemFire 客户端 GemFire服务器 WebꢀServerꢀ与 Ge mFire 集成 2.GemFire 客户端通过协调器来连接合适的GemFire服务器,当建立连接 之后,客户端便可以直接与服务器进行交互 Web服务器 + GemFire 客户端 GemFire 协调器 GemFire服务器 WebꢀServerꢀ与 Ge mFire 集成 3. GemFire 协调器采用HA高可用架构,防止协调器宕机导致客户端与服务器之间连接出现故 障,G e m F ire 集群整体架构如下: Web服务器 Web服务器 + GemFire 客户端 Web服务器 + GemFire 客户端 Web服务器 + GemFire 客户端 + GemFire 客户端 GemFire 协调器 GemFire 协调器 GemFire服务器 GemFire 服务器 GemFire 服务器 GemFire 服务器 集中式数据库 Memcached大规模集群扩展 § 传统memcache分布式集群主要靠客户端程序库实现,”服务端”没有分 布式 § 当memcache集群环境发生变化时,如加入、离开节点会严重影响缓存 的命中率 PHP APP PHP APP PHP APP Magent使用一致性哈希 分配值到memcache节点 Magent Memcache Memcache Memcache OS OS Win Memcached大规模集群扩展 § GemFire 嵌入 Gemcache服务器与memcache客户端进行交互,将 形成与memcache类似的动态分布式缓存集群,实现memcache应用 与 GemFire联动 PHP APP OS PHP APP OS PHP APP Win GemCache GemFire OS GemFire GemFire JVM JVM OS OS Memcached迁移至Ge mFire § 迁移动机: memcached 最根本的问题在与它仅支持”cache-aside”,应用 既负责更新缓存和也负责更新数据库。其结果是: -会导致缓存和DB数据出现不一致的风险 -破坏每个应用的业务逻辑 PHP APP Memcache OS 有效避免惊群效应 § 目前大多互联网应用前端内容更新地非常快。当这台服务器出现故 障后,所有的客户端请求服务器将得到缓存丢失错误,那么所有的 客户端都向数据库访问数据,数据库有被瞬间压瘫的风险。 PHP APP OS GemCache GemFire OS GemCache GemFire OS GemCache GemFire Win 有效避免惊群效应 § Memcached 客户端使用Memcached API连接GemCache,实现读写 GemFire中的数据,维护着一个GemCache服务器的列表。 PHP APP OS GemCache GemFire OS GemCache GemFire OS GemCache GemFire OS DB 有效避免惊群效应 § 前端应用不再直接与DB交互,简化了应用代码。所有的数据库都通 过GemFire来读写数据。为了从D Bꢀ中读取数据

文档评论(0)

1984kelu + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档