来QCon北京,现场感受“纯血鸿蒙”的魅力!席位有限,抓紧报名 了解详情
写点什么

SCA 的未来

  • 2007-05-21
  • 本文字数:1168 字

    阅读完需:约 4 分钟

David Chappell(来自于 Chappell & Associates,不要误以为是 Sonic/Oracle 的 David Chappell)在他的博客帖子里道出了他在 JavaOne 上主持的一个关于服务组件架构(Service Component Architecture,SCA)座谈会的感受。David 强调了 SCA 是两个事物的组合这一事实,也就是:

[…] 在 Java(和 C++)中创建面向服务组件的一种新编程模型,以及一种描述如何将组件装配进入组(被称为“组合”)的方法。“组合”既可以包含使用了 SCA 的新编程模型构建的组件,也可以包含使用了其他技术(如 Spring 和 BPEL)构建的组件。SCA 没有为这些其它的技术定义新编程模型,但是它描述了使用它们构建的组件如何成为“组合”一个部分的方法。

SCA 和 JBI(Java Business Integration)的相对价值,已经在之前InfoQ 的文章中讨论过了——现在有份关于它们关系的官方声明。在之前的帖子中,Chappell 认为SCA 是 Java EE 的威胁。IBM 和 BEA 是 SCA 的重要支持者,他们的 J2EE/Java EE 投资都将不会有严重的问题——但是正如 David 指出的,这就意味着不同的事情:

这其中需要注意的一点是:当厂商声称他们支持 SCA,只有当你问他们时,你才会知道他们说的意思。当 Oracle 这么说时,他们似乎是指技术的装配方面。 当 BEA 这么说时,他们似乎是指装配方面和 Java 组件模型,而未必是指 C++ 组件模型。当 IBM 这么说时,他们似乎是指当前 1.0 规范中几乎所有的内 容。当 Sun 这么说时——嗯,恐怕我也不知道他们真正指什么了。

来自 Google 的 Gregor Hohpe分享了他的感受

这个编程模型与微软的 WCF 非常类似,它为所有类型的分布式系统通信提供了一套统一的 API。在微软的世界中,这可是个大事情, 公正地说确实如此。因此,有些令人惊讶的是厂商对于 SCA 编程模型的支持并不热心。甚至很多“官方”文档似乎对于规范方面不予重视。只有 IBM 和 BEA 是 在真正支持这两个方面,而其他的则公开声明他们并不关心编程模型。

同时,Hohpe 也质疑 SCA 是否有什么真正与 SOA 有关的东西:

我以前看规范的时候,我完全忽略了规范的假定:“组合”必须运行在单一厂商环境中。这个限制对我来说意味着 SCA 几乎与 SOA 没关系,SOA 必须处理异构且不被单一厂商控制的环境。

事实上,SCA 似乎在表达一个不同于典型“高级”的 SOA 方面的主题。尽管那不意味着它就不是一个可行的技术,但它避开了 SOA 相关标准是否真正可用的这一老生常谈的问题。

查看英文原文: The Future of SCA


译者简介:胡键,自 2000 年西安交通大学硕士毕业后一直从事软件开发。2002 年开始使用 Java,在项目开发中经常采用 OpenSource 工具,如 Ant、Maven、Hibernate、Struts 等,目前正在研究信息集成方面的规范和技术。可以通过 jianhgreat@hotmail.com 与他联系,或访问博客: http://foxgem.javaeye.com/ 。为 InfoQ 中文站贡献内容,请邮件至 china-editorial[at]infoq.com

2007-05-21 21:00613
用户头像

发布了 255 篇内容, 共 54.3 次阅读, 收获喜欢 9 次。

关注

评论

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

http协议

en

HTTP

JavaScript数据结构实用集

devpoint

JavaScript 数据结构 内容合集 签约计划第二季

架构实战营毕业总结

白开水又一杯

#架构实战营

关于研发效能推进提升的一点感受

homber

DevOps 研发效能 签约计划第二季

JavaScript 数据结构之 Number

devpoint

ES6 math 内容合集 签约计划第二季

JavaScript 数据结构之 Map

devpoint

set map ES6 内容合集 签约计划第二季

音视频实战(3)- Mac 系统 MediaInfo 多实例媒体信息分析

liuzhen007

签约计划第二季

JavaScript 数据结构之 Set

devpoint

set ES6 内容合集 签约计划第二季

为什么不上台?(5/28)

赵新龙

28天写作

音视频学习从理论到实战

liuzhen007

内容合集 签约计划第二季 技术专题合集

架构实战营毕业总结

Geek_d18264

架构实战营

从0到1普及前端知识 | 内容合集

你好bk

内容合集 签约计划第二季

勿拖延

Nydia

音视频理论(2)- 音视频传输协议之 RTMP

liuzhen007

签约计划第二季

JavaScript 数据结构之 Object

devpoint

ES6 Object 内容合集 签约计划第二季

.NET 6新东西--PeriodicTimer

喵叔

28天写作 12月日更

如何有效处理素材

将军-技术演讲力教练

音视频理论(3)- 视频中图片和文字渲染坐标问题

liuzhen007

签约计划第二季

左耳听风,右手敲码

homber

成长 感悟 竞争力 签约计划第二季

华为中国大学生ICT大赛2021实践赛网络赛道晋级赛试题解析(答案版)

小韩

华为 网络 ICT

Go并不需要Java风格的GC

Robert Lu

Go 垃圾回收

音视频实战(4)- 常见流媒体服务器方案对比分析

liuzhen007

签约计划第二季

Camtasia添加光标效果教程

淋雨

Camtasia

Prometheus Exporter (十七)JMX Exporter

耳东@Erdong

JMX Prometheus 28天写作 exporter 12月日更

实用机器学习笔记四:数据标注

打工人!

机器学习 学习笔记 12月日更 实用机器学习

音视频实战(2)- 如何在网页端给视频添加硬水印

liuzhen007

签约计划第二季

音视频实战(5)- FFmpeg 处理音视频常见问题集锦

liuzhen007

签约计划第二季

搭建基本Jest测试框架,解读覆盖率实现原理

梁龙先森

签约计划第二季

netty系列之:手持framecodec神器,创建多路复用http2客户端

程序那些事

Netty HTTP 程序那些事 http2 12月日更

如何通过Kubernetes事件来报告错误

Robert Lu

#Kubernetes#

Rust 元宇宙 13 —— 客户端连接

Miracle

rust 元宇宙

SCA的未来_Java_Stefan Tilkov_InfoQ精选文章