没有合适的资源?快使用搜索试试~ 我知道了~
首页Apache Geode权威指南(中文版).pdf
Apache Geode是一个数据管理平台,可在广泛分布的云架构中实时,一致地访问数据密集型应用程序。 Apache Geode 和 Redis的比较: geode是java生态圈,目的是高性能高可用,除了缓存,更像数据库,可以sql查询,硬盘可能仅在出现灾难时才用,大部分都在内存就处理了。 redis主要是缓存,没有冗余设计导致可靠性相对较低,主要用于web应用。 其中,支付宝,12306等大型分布式工程都毫无疑问会选择geode。
资源详情
资源评论
资源推荐

Apache Geode文档
本文档介绍了产品概念,并提供了Apache Geode 1.7的完整设置说明。 源文件可从Apache
Geode Github存储库获得,有关如何构建此文档的说明如下: 可在[Geode项目自述文件]中找
到(../../../../ github.com/apache/geode/blob/develop/geode-book/README.md)。
(../../../../cwiki.apache.org/confluence/display/GEODE/Index).
您还可以在Apache Geode Wiki上找到有关Geode的其他文档。
Apache Geode文档
Apache Geode入门
关于 Apache {#关于Apache}
Apache Geode的主要特点 {#ApacheGeode的主要特点}
先决条件和安装说明
主机要求
如何安装
设置CLASSPATH {#设置CLASSPATH}
如何卸载
Apache Geode在15分钟或更短时间内完成 {#ApacheGeode在15分钟或更短时间内完成}
Apache Geode入门
教程演示了功能,主要功能部分介绍了主要功能。
关于Apache
Apache Geode是一个数据管理平台,可在广泛分布的云架构中提供对数据密集型应用程
序的实时,一致的访问。
Apache Geode的主要特点
本节总结了Apache Geode的主要功能和主要功能。
先决条件和安装说明
满足一小部分先决条件的每个Apache Geode主机都可以遵循提供的安装说明。
Apache Geode在15分钟或更短时间内完成

需要快速介绍Apache Geode?
参加这个简短的游览,尝试基本功能。
关于
Apache
Apache Geode是一个数据管理平台,可在广泛分布的云架构中提供对数据密集型应用程序的
实时,一致的访问。
Geode跨多个进程汇集内存,CPU,网络资源和可选的本地磁盘,以管理应用程序对象和行
为。
它使用动态复制和数据分区技术来实现高可用性,改进的性能,可伸缩性和容错性。
除了
作为分布式数据容器之外,Geode还是一个内存数据管理系统,可提供可靠的异步事件通知和
有保证的消息传递。
主要概念和组件
Caches是描述Geode集群中节点的抽象。
应用程序架构师可以在
peer-to-peer
或
client/server
拓扑中安排这些节点。
在每个缓存中,您可以定义数据regions。
数据区域类似于关系数据库中的表,并以分布式方
式管理数据作为
name/value
对。一个replicated区域在集群的每个缓存成员上存储相同的数据
副本。一个partitioned区域在缓存成员之间传播数据。配置系统后,客户端应用程序可以在不
了解底层系统体系结构的情况下访问区域中的分布式数据。
您可以定义侦听器以创建有关数据
何时更改的通知,并且可以定义到期条件以删除区域中的过时数据。
对于大型生产系统,Geode提供locators。
定位器提供发现和负载平衡服务。
使用定位器服务
列表配置客户端,定位器维护成员服务器的动态列表。
默认情况下,Geode客户端和服务器使
用端口
40404
相互发现。
有关产品功能的更多信息,请参阅
Apache Geode的主要特点.
Apache Geode的主要特点
本节总结了主要功能和主要功能。
高读写吞吐量
低且可预测的延迟
高可扩展性
持续可用性
可靠的事件通知
数据存储上的并行应用程序行为
无共享磁盘持久性

降低拥有成本
客户/服务器的单跳能力
客户/服务器安全
多站点数据分布
连续查询
异构数据共享
高读写吞吐量
读写吞吐量由并发主存储器数据结构和高度优化的分发基础结构提供。 应用程序可以通过同步
或异步复制在内存中动态复制数据,以实现高读取吞吐量,或者跨多个系统成员对数据进行分
区,以实现高读写吞吐量。 如果数据访问在整个数据集中相当平衡,则数据分区会使聚合吞吐
量翻倍。 吞吐量的线性增加仅受骨干网容量的限制。
低且可预测的延迟
优化的缓存层最大限度地减少了线程和进程之间的上下文切换。 它管理高度并发结构中的数
据,以最大限度地减少争用点。 如果接收器可以跟上,则与对等成员的通信是同步的,这使得
数据分发的延迟保持最小。 服务器以序列化形式管理对象图,以减少垃圾收集器的压力。
订阅管理(兴趣注册和连续查询)跨服务器数据存储进行分区,确保仅为所有感兴趣的客户端
处理订阅一次。 由此带来的CPU使用和带宽利用率的提高可提高吞吐量并减少客户端订阅的延
迟。
高可扩展性
通过跨多个成员动态分区数据并在服务器之间统一分布数据来实现可伸缩性。 对于“热”数据,
您可以将系统配置为动态扩展以创建更多数据副本。 您还可以将应用程序行为设置为以接近所
需数据的分布式方式运行。
如果您需要支持高且不可预测的并发客户端负载突发,您可以增加管理数据的服务器数量,并
在其中分配数据和行为,以提供统一且可预测的响应时间。 客户端根据服务器在其负载条件下
的持续反馈,不断对服务器场进行负载均衡。 通过跨服务器分区和复制数据,客户端可以动态
移动到不同的服务器,以统一加载服务器并提供最佳响应时间。
您还可以通过实现对外部数据存储(如数据库)的数据更改的异步“write behind后写”来提高
可伸缩性。 这可以通过按顺序冗余排队所有更新来避免瓶颈。 您还可以混合更新并将它们批量
传播到数据库。
持续可用性

除了保证内存中数据的一致性副本之外,应用程序还可以通过使用“无共享磁盘体系结构”将数
据同步或异步地保存在一个或多个成员的磁盘上。所有异步事件(存储转发事件)至少是冗余
管理的 两个成员,如果一个服务器发生故障,冗余的服务器将接管。 所有客户端都连接到逻辑
服务器,并且客户端在故障期间或服务器无响应时自动故障转移到组中的备用服务器。
可靠的事件通知
发布/订阅系统提供数据分发服务,其中新事件被发布到系统中并以可靠的方式路由到所有感兴
趣的订户。 传统的消息传递平台专注于消息传递,但接收应用程序通常需要在处理事件之前访
问相关数据。 这要求他们在事件传递时访问标准数据库,以数据库的速度限制订阅者。
数据和事件通过单一系统提供。 数据作为一个或多个分布式数据区域中的对象进行管理,类似
于数据库中的表。 应用程序只需在数据区域中插入,更新或删除对象,平台就会将对象更改传
递给订阅者。 接收事件的订户可以直接访问本地存储器中的相关数据,或者可以通过单跳从其
他成员之一获取数据。
数据存储上的并行应用程序行为
您可以在成员上并行执行应用程序业务逻辑。 数据感知功能执行服务允许在成员上执行任意
的,依赖于数据的应用程序功能,其中数据被分区以用于参考和缩放的位置。
通过并置相关数据并并行化计算,可以提高整体吞吐量。 计算延迟与可以并行化的成员数成反
比。
基本前提是将功能透明地路由到承载功能所需的数据子集的应用程序,并避免在网络上移动数
据。 应用程序功能只能在一个成员上执行,在成员子集上并行执行,或在所有成员上并行执
行。 此编程模型类似于Google的流行Map-Reduce模型。 数据感知功能路由最适合需要迭代
多个数据项的应用程序(例如查询或自定义聚合功能)。
无共享磁盘持久性
每个集群成员独立于其他成员管理磁盘文件上的数据。 一个成员中的磁盘故障或缓存故障不会
影响另一个缓存实例在其磁盘文件上安全运行的能力。 这种“无共享”持久性体系结构允许对应
用程序进行配置,使得不同类别的数据持久保存在整个系统的不同成员上,即使为应用程序对
象配置了磁盘持久性,也会显着提高应用程序的整体吞吐量。
与传统数据库系统不同,单独的文件不用于管理数据和事务日志。 所有数据更新都附加到与传
统数据库的事务日志类似的文件中。 如果磁盘未被其他进程同时使用,则可以避免磁盘寻道时
间,并且唯一的成本是旋转延迟。
降低拥有成本

您可以在层中配置缓存。 客户端应用程序进程可以在本地(在内存中并溢出到磁盘)托管缓
存,并在未命中时委托给缓存服务器场。 即使本地缓存的命中率达到30%,也可以显著节省成
本。 与每个事务相关的总成本来自CPU周期花费,网络成本,对数据库的访问以及与数据库维
护相关的无形成本。 通过将数据作为应用程序对象进行管理,可以避免与将SQL行映射到对象
相关联的额外成本(CPU周期)。
客户/服务器的单跳能力
客户端可以将单个数据请求直接发送到持有数据key的服务器,从而避免多跳以定位已分区的数
据。 客户端中的元数据标识正确的服务器。 此功能可提高服务器层中分区区域的性能和客户端
访问权限。
客户/服务器安全
客户端应用程序中可能有多个不同的用户。 此功能适用于客户端嵌入应用程序服务器的安装,
每个应用程序服务器都支持来自许多用户的数据请求。 每个用户可能被授权访问服务器上的一
小部分数据,如在客户应用程序中,其中每个客户只能访问他们自己的订单和货件。 客户端中
的每个用户都使用自己的一组凭据连接到服务器,并拥有自己对服务器缓存的访问权限。
多站点数据分布
数据站点在地理上分布在广域网(WAN)上可能导致可伸缩性问题。 模型可以解决这些拓扑问
题,从单个对等集群到WAN上数据中心之间的可靠通信。 此模型允许集群以无限且松散耦合的
方式扩展,而不会降低性能,可靠性或数据一致性。
该体系结构的核心是用于将区域事件分发到远程站点的网关发送器配置。 您可以并行部署网关
发送方实例,从而增加通过WAN分发区域事件的吞吐量。 您还可以配置网关发件人队列以实现
持久性和高可用性,以避免在成员发生故障时丢失数据。
连续查询
在Java Message Service等消息传递系统中,客户端订阅主题和队列。 传递给主题的任何消息
都将发送给订阅者。 Geode允许通过使用对象查询语言使应用程序表达复杂的兴趣来进行连续
查询。
异构数据共享
C#,C ++和Java应用程序可以共享应用程序业务对象,而无需通过SOAP或XML等转换层。 服
务器端行为虽然是用Java实现的,但它为C ++和.NET应用程序提供了唯一的本机缓存。 可以在
C ++进程堆中管理应用程序对象,并使用对象的常见“线上”表示将其分发到其他进程。 C ++序
列化对象可以直接反序列化为等效的Java或C#对象。 使用一种语言更改业务对象可以在使用
其他支持的语言编写的应用程序中触发可靠的通知。
剩余650页未读,继续阅读




安全验证
文档复制为VIP权益,开通VIP直接复制

评论2