写点什么

WebShpere 7 支持基于 OSGi 的应用部署和 SCA 集成

  • 2010-08-02
  • 本文字数:2333 字

    阅读完需:约 8 分钟

WebShpere 应用服务器 V7 的功能包针对OSGi 应用和Java 持久化API2.0 提供了标准实现,该实现遵循 OSGi Blueprint Container 和 Java EE 6 JPA 2.0 规范。该版本还提供了一个可选功能,可以把 Java 应用作为版本化的 OSGi Bundle 的一个集合来装配、部署和管理。IBM WebSphere 团队最近宣布正式发布的功能包是基于Apache 的项目 Aries OpenJPA 。WebSphere 应用服务器的功能包是可选的安装产品,用于应用服务的扩展,提供了一系列新的相关标准和特征。

OSGi 和 JPA 的新特性包括,既能独立安装,也可以一起安装,提供基于 POJO 的组件模型和持久化框架,同时还为 Web 应用的开发和单元测试提供模块化的部署系统。OSGi 的应用特征支持以模块化的风格来开发和部署企业应用,并且为 WebSphere 应用的部署流程引入了 OSGi Bundle 的配置仓库。这使得一些通用的 Bundle 从独立的企业应用档案中分离出来,以 Bundle 仓库的形式集中管理。Bundle 的多版本都可以安装在 Bundle 仓库中,根据应用中的元数据描述,不同的版本可以为其相关的企业应用提供服务。OSGi 的应用特征包括 OSGi V4.2 的 Blueprint 容器,与 WAS 的运行时环境集成后可以简化 POJO 组件的开发和配置,同时可以让容器中的 Bean 以声明式机制来发布和消费 OSGi 服务。这里提到的容器不仅仅是 Bean 的组件,容器中的 Java 包依赖于 OSGi 框架和服务器运行时环境,这样可以在服务器环境以外对 Bean 的组件进行单元测试。新版本的 Rational Application Developer (RAD) V8 Beta 提供了 OSGi 应用的开发工具。

RAD 为 OSGi Bundle 项目和 OSGi 应用项目引入了新的项目类型,可以自动生成 Manifest 信息,并提供了格式化的编辑器。OSGi 的模块化语义已经被加入到了项目的构建路径,提供开发环境支持模块化设计。RAD 的基于 Facet 的配置方式使得 OSGi 项目可以像 OSGi Web 项目或 OSGi JPA 项目那样进行配置,同时提供了针对 web.xml、persistence.xml 和 blueprint.xml 的集成工具。OSGi 应用项目可以从企业 Bundle 档案中导入和导出,既可以运行在 RAD 选装的 WebSphere Application Sever V7 的 RAD 工作空间,也可以运行在远程的安装了 OSGi 应用功能的 WSA V7 上。

JPA2.0 的新标准包括持久化领域建模的改进,新的元模型和标准 API,实体 Bean 校验,JPQL 和更多的 O/R Mapping 元数据的更新。JPA2.0 提供了轻量级的 2 级缓存集成,当 WebSphere extremeScale 可用时,OpenJPA2.0 将采用它作为二级缓存来改进数据存取的性能。

InfoQ 找到了 IBM 的 WebSphere 架构组的杰出工程师 Ian Robinson,请他谈一下新功能包的发布。他表示 OSGi 已经是 IBM 策略的一部分,但它主要用于内部项目(例如 WebSphere 和 Eclipse )。随着 OSGi 企业版本 4.2 的发布以及 OSGi 在企业应用部署方面扮演的角色,OSGi 成为了相关领域的主题,OSGi 可以通过 Bundle 的模式部署应用模块来简化部署流程,同时支持开发人员和 IT 操作人员。Ian 最近了一篇博客,介绍了OSGi 和SCA 集成,以及通过工具支持使用这些新功能。当安装了SCA 的1.0.1.5 或更新版本的WAS V7 功能包发布时,OSGi 的功能就可以与WebSphere 应用服务器的服务组件架构(SCA)联合使用了。SCA 提供了装配模型,可以把异构的模块进行粗粒度的组合,这样的组合可以为那些不同的可配置的绑定定义外部服务和引用。通过组装成SCA 组件,OSGi 应用可以远程暴露它的任何Blueprint──把OSGi 服务配置为SCA 服务,远程配置绑定这些服务。

InfoQ:你能介绍一下 OSGi Blueprint Container 是怎么工作的吗?与其他的 OSGi 框架比较呢?例如 SpringDM 项目。

Blueprint 容器是 OSGi 企业级 V4.2 规范的一部分。它为 OSGi 应用提供细粒度的装配模型,同时支持以简单声明方式来发布 OSGi 服务,该服务是由 POJO Bean 组件提供的。POJO Bean 组件的生命周期和依赖注入由 Blueprint 容器来管理,Blueprint 通过 Bundle 级别的 XML Bean 定义文件来进行配置,这种配置方式是根据 SpringDM Bean 的 xml 文件标准进化而来。目前存在一系列兼容的 Blueprint 容器的实现──例如在开发的 Apache Aries 项目(该项目在安装 OSGi 应用特征时已经被集成到 WAS 中),以及 SpringDM 项目,该项目被 VMWare 贡献给了 Eclipse Gemini 项目。通过许多企业级扩展可以不断增强 Apache Aries Blueprint 容器的功能,这还包括,把容器集成到类似 WAS 的企业环境时,对其事务和持久化的支持。

InfoQ:IBM 把 OpenJPA 2.0 集成到 WebSphere 应用服务器,到底对哪些方面有增强和改进,你能详细描述一下吗?

当安装了 JPA 功能后,JPA 2.0 的功能是由 OpenJPA 2.0 提供的,OpenJPA 2.0 已经作为 WebSphere 应用服务器运行时的一部分。除了与 WAS 的管理、调试、监控和安全集成外,JPA 2.0 运行时还可以通过集成 Data Studio pureQuery Runtime(现在叫 Optim pureQuery Runtime )进行扩展。PureQuery Runtime 是一个高性能 Java 数据访问平台,可以帮助应用系统实现数据访问。PureQuery 能对现有的 Java 类进行挖掘分析,收集绑定到静态包的 SQL 语句,而不需要执行应用程序,还能够显式的改变 DB2 静态 SQL 执行的好处。它可以帮助 DBA 对系统进行修改和锁定 SQL 而不需要修改应用程序,能够提供足够的信息快速跟踪 SQL、找到根源。

InfoQ:在新功能和增强方面,WebSphere v7 OSGi 和 JPA 功能包有哪些规划?

你可以看到在未来我们会进一步增强这些功能,例如作为新版本的 OSGi 企业特性进行发布。既然我们已经开始基于更为广泛的开源社区开发底层技术,那么未来你就可以通过关注 Apache OpenJPA 和 Aries 这样的项目看到 WAS 的集成方式和发展前景。

查看英文原文: WebSphere 7 Feature Pack Supports OSGi-based Application Deployment and SCA Integration

2010-08-02 07:224569

评论

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

性能优化练习

Mars

别再用智能合约时代的思维,去思考下一代区块链应用

CECBC

区块链 计算机

许可区块链是许多金融应用未来的关键特性

CECBC

比特币区块链

02-week3-homework

J

极客大学架构师训练营

【第十二周】课后作业

云龙

生产环境全链路压测建设历程之七: 淘宝网2012年双十一库存超卖问题的本质

数列科技杨德华

第十二周作业(作业二)

Geek_83908e

架构师一期

第八周 作业

Jack

第十二周作业

alpha

极客大学架构师训练营

架构之书:雄心与《C++语言的设计与演化》

lidaobing

c++ 架构

架构师训练营 2 期 - 第八周总结

Geek_no_one

极客大学架构师训练营

前端不得不懂的架构知识(中)

执鸢者

架构 大前端

架构师训练营第八周作业1

韩儿

玛雅公约软件系统开发|玛雅公约APP开发

系统开发

架构师训练营第 1 期 week12

张建亮

极客大学架构师训练营

架构师训练营第 1 期第 12 周学习总结

好吃不贵

极客大学架构师训练营

架构师训练营 2 期 - 第 8 周命题作业

Geek_no_one

极客大学架构师训练营

第十二周作业(作业一)

Geek_83908e

架构师一期

架构师训练营第 1 期 - 第 12 周课后练习

Anyou Liu

极客大学架构师训练营

架构师训练营 1 期第 12 周:数据应用(一)- 作业

piercebn

极客大学架构师训练营

架构师训练营第三周”代码重构“作业

随秋

极客大学架构师训练营

FFmpeg使用基础(音视频开发入门)

赖猫

架构师训练营 第八周作业

文江

第八周总结

孤星

第八周作业

孤星

宝马区块链负责人:我们是如何让区块链技术与汽车产业结合的?

CECBC

大数据

《社会中的数据可视化》PDF免费下载

计算机与AI

数据可视化

性能优化总结二

Mars

Codurance不太一样

sherlockq

银行业大数据应用及HiveQLjoin分析

garlic

极客大学架构师训练营

Prometheus backfilling 功速体验

Grafana 爱好者

Prometheus tsdb

WebShpere 7 支持基于OSGi的应用部署和SCA集成_Java_Srini Penchikala_InfoQ精选文章