2020 Google开发者大会重磅开幕 了解详情

GigaSpaces XAP 7.1 EA版:弹性中间件、数据查询和Spring 3.x

2010 年 4 月 02 日

GigaSpaces XAP 是一款包含内存数据网格的分布式应用服务器。GigaSpaces 起初是作为一种商业分布式 JavaSpaces 实现,随后扩展增加了内存数据网格功能,如本地缓存、回收和查询支持。后来进一步发展,GigaSpaces 引入了基于Space 的架构作为针对企业应用在扩展性和低延迟方面的广泛解决方案。基于space 架构的核心在于扩展的轻量级Spring 容器,包含了中间件功能,如数据存储和消息机制。该容器被复制到网格中的其他机器上,实现线性扩展。在最近几个版本中,产品专注于用户体验的便捷性和分布式应用的管理。

XAP 7.1 版包括了大量新功能:

弹性中间件服务

新的弹性中间件服务兼容 Amazon EC2 ,旨在简化部署和使用。该功能的首个里程碑版本包含了弹性数据网格功能。

陈旧、底层的配置(如域名绑定、IP 地址和数据网格划分等等)被高层次的细节和数据网格的初始、最大容量所替代。 凭借新的弹性中间件服务,系统能够识别可用的硬件资源或者提供所需的资源(虚拟环境下)并通过预先设定的配置启动数据网格。API 类似于如下内容:

复制代码
elasticServiceManager.deploy(new ElasticDataGridDeployment("mygrid")
.isolationLevel(IsolationLevel.DEDICATED)
.highlyAvailable(true)
.elasticity("2GB", "6GB")
.jvmSize("512MB")
.addSla(new MemorySla(70)));

自动化配置使扩展和容错对客户透明。这通过节点之间的负载均衡实现,系统在可用的机器上恢复失败的数据网格分区,当内存阈值超出时在部署的机器之间移动数据。

虚拟化兼容

新版本经过测试与若干虚拟化平台如 VMWare GoGrid RackSpace 兼容。不久的将来,它还会添加 Terremark Citrix Xen 集成。

数据查询

数据网格查询功能得到了改进,目前支持利用路径表达式通过关联对象字段查询数据:

复制代码
SQLQuery query = new SQLQuery(Person.class, "address.street.number = 1");

空间查询的索引利用一组新的注解通过父类控制:

复制代码
@SpaceClass
public class Person
{
private String lastName;
private String firstName;
private Integer age;
...
@SpaceIndex(type=IndexType.BASIC)
public String getFirstName() {return firstName;}
public void setFirstName(String firstName) {this.firstName = firstName;}
@SpaceIndex(type=IndexType.BASIC)
public String getLastName() {return lastName;}
public void setLastName(String name) {this.lastName = name;}
@SpaceIndex(type=IndexType.EXTENDED)
public String getAge() {return age;}
public void setAge(String age) {this.age = age;}
}

管理应用

该版本引入了管理工具的新 web 界面,一个基于 GWT / AJAX 的控制板,实时汇总整个集群的视图和运行组件,同时提供图形和表格两种显示方式(图 1)。现有的管理 GUI(之前的 7.0 版引入)增加了线程快照和跟踪所有注册 JVM 的汇总日志。线程 dump 功能也可以通过 API 调用。

图 1:web 管理控制板

嵌入 Spring 3.0

XAP 7.1 服务器现在嵌入了 Spring 3.0 ,向后兼容早期的 Spring 2.5。但是建议在部署应用之前,采用 Spring 3.0 重新编译应用。

性能改进

本版的一些性能改进:

  • 支持多线程、SQL 查询的并发处理以应对复杂查询。

向外扩展的步骤

为了在现有的应用上使用 XAP 7.1 框架,需要针对应用处理的问题领域采取渐进的步骤。如下:

  • Web 层:使用 XAP 部署标准 WAR 文件,以实现动态负载均衡。
  • 消息 / 事件:使用 XAP 事件监听器替代现有的消息驱动 Bean,以实现消息机制。
  • 远程化:通过添加 POJO 的注解或者使用 Spring XML 配置来与远程调用和异步远程化集成。
  • 数据存取(初级):集成 GigaSpaces XAP 的初级应用是将其作为 Hibernate 的二级缓存。针对密集读操作的场景显著地提高性能。
  • 数据存取(高级):通过划分数据模型结构和把 DAO 转换成直接访问 XAP 内存数据网格,改进读写性能。
  • 事务:无需修改基于 Spring 的应用。对于其他应用来说,建议使用 Spring 事务框架。

更多信息,请访问 XAP 7.1 EA 版的相关文档和下载

查看英文原文: GigaSpaces XAP 7.1 EA: Elastic Middleware, Data Querying and Spring 3.x

2010 年 4 月 02 日 00:54 1093
用户头像

发布了 501 篇内容, 共 209.8 次阅读, 收获喜欢 20 次。

关注

评论

发布
暂无评论
发现更多内容

华章科技好书5折优惠,满99再减10元

华章IT

Python AI 数字化转型 Java 25 周年 计算机科学丛书

week10 学习总结

任小龙

Jira 和 Confluence 企业最佳部署方式

Atlassian速递

项目管理 敏捷开发 Atlassian Jira

即大数据后-贵阳能否成为区块链的机遇之城?

CECBC区块链专委会

区块链 大数据 贵阳

央行清算总中心与三家银行签署区块链福费廷交易平台合作协议

CECBC区块链专委会

区块链技术 人民银行

Django如何编写自定义manage.py 命令

Young先生

Python django manage.py

数据库的那些事

数据社

数据库 大数据

聊聊数据库

数据社

数据库 大数据

Flink 支持的重启策略有哪些

古月木易

flink

Flink 支持的重启策略有哪些

奈学教育

flink

关于微服务架构的思考和认知

任小龙

微服务

石印掌纹

anyRTC 4.0 以心铸造,以梦相承

anyRTC开发者

anyRTC 4.0 官网升级

报警不响,黄金万两的“稳定性成熟度”干货

滴滴普惠出行

一周信创舆情观察(8.3~8.9)

统小信uos

微服务和DDD总结

周冬辉

微服务 DDD

低/零代码的认知误区有哪些?

代码制造者

编程语言 低代码 零代码 信息化 开发应用

什么是死锁?如何解决死锁?

奈学教育

什么是死锁?如何解决死锁?

古月木易

死锁

架构师训练营 week10 summary

胡文强

架构师训练营 week10 homework

胡文强

CDH部署指南

数据社

大数据 CDH

架构师训练营第十周作业

一剑

Kubernetes 网络通讯模型解析

ninetyhe

凉了!张三同学没答好「进程间通信」,被面试官挂了....

小林coding

操作系统 计算机基础 进程

一文了解greenplum

数据社

数据库 greenplum MPP

数据中台建设方法论

数据社

大数据 数据中台

只加两行代码,为什么用了整整两天时间?

程序员生活志

编程 bug

35岁腾讯员工被裁员感叹:北京一套房,存款700多万,失业好焦虑

程序员生活志

程序员生活

django-admin和manage.py用法

Young先生

Python django django-admin manage.py

解决 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED

邵俊达

Linux SSH

GigaSpaces XAP 7.1 EA版:弹性中间件、数据查询和Spring 3.x-InfoQ