VMware vFabric GemFire 6.5:为现代应用程序提供现代数据管理
新一代现代应用程序的一些特性是它们倾向于高度交互、数据丰富、包含业务流程,并通过网络从 PC 和移动设备上可访问。驱动这些应用程序的是利用虚拟化基础设施、提供恰到好处的功能并且可以随着需求的变化轻松扩展的平台。
VMware 的 vFabric Cloud Application Platform 就是这样一个平台,它被设计用来最有效地运行 Spring 应用程序并提供现代应用程序体验。该平台的一个重要组成部分是 vFabric GemFire。vFabric GemFire 内存分布式数据管理以低延迟、高可靠性和线性、动态可扩展性将数据带给应用程序。我们很高兴地 宣布 vFabric GemFire 版本 6.5。
vFabric GemFire 首席架构师 Jags Ramnarayan 在他最新的 博客文章中详细介绍了该版本的全部内容,但其中一些关键的新功能包括:
- 简化直观的编程模型:首先,我们通过减少过去所需的样板引导代码来简化编程模型,并引入了常见配置和拓扑的预打包模板。其次,我们启动了新的 Spring-Gemfire 项目,为 Spring 开发人员引入了一个干净的编程模型。请注意,Spring-GemFire 不随 GemFire 6.5 一起提供。如果您已经熟悉 GemFire API 或刚开始学习,我建议您阅读本教程,该教程将介绍一些新的 简化的编程 API。不用担心,您现有的应用程序将继续正常运行。旧 API 完全受支持。
- 通过共享无副本并行持久化实现数据库级可靠性:一种独特的、高性能的设计,用于跨集群池化磁盘以存储和恢复数据。GemFire 一直支持复制数据区域的磁盘持久化和恢复,但现在此功能已扩展到分区数据。所采用的设计原则与典型集群数据库的原则根本不同。首先,磁盘存储是共享无副本的——每个缓存进程都拥有自己的磁盘存储,从而消除了进程级别的争用。其次,设计偏向于内存,即磁盘上没有复杂的 B 树数据结构;相反,我们假设复杂的查询导航始终通过内存索引进行。第三,该设计使用滚动追加日志文件来完全避免磁盘寻道。最后,该设计在增加或减少容量时保留了 GemFire 中的重新平衡模型——磁盘数据也会自行重新定位。
- 改进的横向扩展能力:使用分层模型(客户端进程嵌入本地缓存,连接到服务器场)的应用部署在访问分区数据时,性能可提高 2 倍或更多。通过 6.5,客户端进程获得了对服务器端分区的了解,并可以动态地利用这些信息将流量直接定向到拥有所需数据集的服务器。订阅基于键的注册兴趣或“连续查询”的应用程序客户端现在已将它们的订阅注册到所有分区节点。这使得每个分区都能在应用数据更改的节点上处理订阅过滤器,从而显著减少了对等节点之间的消息传递流量,这与以前的版本不同。最终效果是,可以处理更多的订阅,并且到客户端的事件传递延迟也得到了降低。
- 共定位事务:如果每个逻辑分区都拥有完整的事务工作集,那么高度可扩展的应用程序在并发事务负载均匀分布在数据集上,从而分布在所有分区上时,可以实现线性扩展。每个分区都可以协调其事务,而不会对其他分区产生任何影响,也无需跨分区进行锁定。GemFire 6.5 在分布式事务设计上进行了一项更改,以检测数据共定位的情况,并避免启用内置的分布式锁定服务。
6.5 版本中添加的功能的完整列表可以在 Gemfire 文档中找到。Jags 的博客文章也详细介绍了 导致极高磁盘吞吐量的因素。 下载新的 Gemfire 6.5 并进行试用。