写点什么

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

  • 2010-04-02
  • 本文字数:1747 字

    阅读完需:约 6 分钟

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-04-02 00:541590
用户头像

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

关注

评论

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

听GPT 讲Rust源代码--compiler(44)

fliter

镜像仓库Habor的安装、高可用、https加密教程

百度搜索:蓝易云

Docker Linux 运维 https habor

听GPT 讲Rust源代码--compiler(43)

fliter

听GPT 讲Rust源代码--compiler(48)

fliter

从上海到阿根廷的网络走线方式和耗时

fliter

听GPT 讲Rust源代码--compiler(46)

fliter

听GPT 讲Rust源代码--compiler(47)

fliter

Part 4:NetOps 策略如何影响企业网络团队?

Geek_d82186

Part 5:NetOps团队的 SecOps和网络安全基础知识

Geek_d82186

基于OpenIM 实现聊天机器人功能

Geek_1ef48b

跨境通讯

cts喜友科技

通信 通讯

如何在JavaScript中实现主题切换

南城FE

CSS JavaScript 前端 主题切换

产品价值 vs Bug数量

Bruce Talk

敏捷 敏捷开发 Agile Product Owner

听GPT 讲Rust源代码--compiler(45)

fliter

[杂谈]IDE-idea-可执行JAR项目创建

alexgaoyh

Java IDEA 打包 可执行JAR

Part 1:什么是网络运营?你需要知道的一切

Geek_d82186

Part 2:NetOps与传统网络运营的区别

Geek_d82186

面向对象的思考

蔡农曰

架构 开发 软件设计 #程序员

Tonka Finance 测试网活动,开启新铭文时代财富之门

股市老人

如何高效地利用淘宝API接口获取商品数据

Noah

INFINI Labs 产品更新 | 统一版本号 1.22.0

极限实验室

Gateway 极限科技 产品更新发布 版本号修复

Python笔记四之协程

Hunter熊

Python 协程

互联网这座围城

老张

35岁危机 行业风口

听GPT 讲Rust源代码--compiler(41)

fliter

听GPT 讲Rust源代码--compiler(42)

fliter

京东商品详情数据接口python

tbapi

京东 京东商品详情数据接口 京东API接口

极狐GitLab 16.8 如期而至,快来看看有哪些功能更新!

极狐GitLab

# OpenIM (Open-Source Instant Messaging) Mac Deployment Guide

Geek_1ef48b

Part 3:为什么 NetOps 是通往 AIOps 的桥梁

Geek_d82186

某SAAS云平台系统单点登录案例基本要求分析

极客罗杰

Nginx安装三方插件ngx_req_status模块教程

百度搜索:蓝易云

云计算 Linux 运维 云服务器 ngx_req_status

GigaSpaces XAP 7.1 EA版:弹性中间件、数据查询和Spring 3.x_Java_Gilad Manor_InfoQ精选文章