`
BlueDavy
  • 浏览: 153717 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SCA:企业应用开发的利器

阅读更多

SCA无疑是目前业界最为火热的词语之一,粗略的翻阅了一下SCA V0.9的规范,先不论SCA的商业因素,不得不感叹于SCA确实可以称为企业应用开发的利器,而SCA的野心也是从目前的规范中可见一斑。
SOA是近些年来各大厂商一直炒作的一个热门词语,不过基于SOA思想如何来开发系统是没有规范的,各大厂商可谓是各有一套,而SCA呢,就是出于这个目的来制定的,SCA旨在为基于SOA思想的系统制定开发、部署的规范,对于SOA大家千万不要以为就是Webservice,Webservice只是实现SOA思想的一种可选的技术而已,SOA思想只是一个纯粹的概念,意在强调系统是以服务的方式来形成架构,而其实只要你的系统是这么做的,就可以称为是SOA的系统,而不是说一定要是采用了象webservice这些的才能称为SOA的系统。
既然SCA是为基于SOA思想的系统而制定的开发、部署规范,它首先必然是具备了SOA的一系列的优点,象跨语言、分布式、以服务的思想构建系统等。
SOA的思想方式多种多样,SCA则为基于SOA思想的系统制定了统一的开发规范,那就是面向服务的组件架构,这个部分和OSGi的DS基本可以说是完全一样的,都是一种对于模块规范开发的标准的定义,SCA中对于模块同样的划分为多个组件,每个组件可对外提供一个或多个服务,同时可引用其他组件提供的一个或多个服务,由于SCA是基于为企业应用开发提供方便的思想而制定的,这就使得在面向服务的组件架构的考虑上,和OSGi相比呈现了更全面的考虑,最重要的自然是体现在了对于分布式应用以及本地调用集成这两点上:
1、分布式应用
      SCA支持远程调用其他组件的服务,而这点正是OSGi的一个巨大的缺点,也是EEG现在正在努力做的;SCA对于远程调用其他组件的服务支持象Webservice、JMS、JCA、RMI、CORBA等等方式的调用。
2、本地调用集成
      本地调用的集成上是OSGi中的一个挺大的缺点,当然,这也是因为OSGi制定时考虑的目标不同的原因,本地调用的集成上SCA支持象Spring调用SCA中的服务、EJB的调用等等,当然,SCA同样支持其他语言的调用,象php、c++等等。
基于SCA,无论对于构建本地的应用或分布式的应用都是不错的,SCA制定的面向服务的组件架构无疑是一种不错的开发规范,其实,这也就是将我们平时在设计系统的方法进行了规范化(模块--组件--服务),由于SCA目标就是为了支撑企业应用的,它对于各种技术集成的考虑上无疑使得它在这块超越了OSGi。
对于部署,SCA制定了很方便的方式来完成,对于每个组件可选择多种绑定方式,通过选择的绑定方式来决定该组件的服务对外提供的方式,如可为组件选择webservice的绑定方式,那么在外部就可以通过webservice的方式来调用这个组件的服务,又或者可以提供java接口等其他的方式,完全可以根据应用来决定组件对外提供服务的方式。
对于SCA中的组件的修改,SCA同样是支持动态的方式。
SCA对于组件中的服务的调用提供了异步调用的支持,在异步调用的支持上SCA的考虑也较为全面,象JMS方式的、RMI方式的等等。
SCA对于组件中的服务的通讯数据采用SDO标准。
对于企业应用,SCA还提供了关键的一些基础设施,象安全性、事务、可靠调用等,这对于企业应用的开发而言就变得很方便了。
总体而言,SCA在企业应用开发层次而言,吸取了OSGi的模块化开发、部署的规范的优点,同时又考虑到了企业应用中的需求,这使得对于企业应用而言,SCA规范无疑是全面超越了OSGi,而各大厂商的积极推进必然会使得SCA在短时间内全面流行, IBM的WPS已经支持SCA方式的开发、部署了,SCA提供的规范的模块化的开发、灵活的部署以及调用方式、跨语言的标准以及提供的声明式的基础设施使得它足以成为企业应用开发的利器。
SCA确实可以成为企业应用开发的利器,因为它分离了企业应用开发中的开发以及部署,而在开发上通过它提供的声明式的基础设施(就像spring中的POJO Enhanced)使得开发人员的关注点可以集中到业务的实现,基于SCA规范了系统的开发和部署方式,同时对开发人员屏蔽了其中诸如远程调用、事务、安全这些复杂的东西的实现,但是SCA是否真的就能成为对于企业应用集成可用的东西呢(但它好象也没说它要成为这样的东西 ),值得打上一个很大的问号。
来看一个基于SCA的系统的典型的架构:
SCA Application Architecture.PNG
感兴趣的同学们可关注下SCA的官方网站:http://www.osoa.org

ps:以SCA这样的情形来看的话,个人觉得SCA就象是OSGi在企业应用中的延伸,OSGi成立EEG无疑一定层面上和SCA这边是有一定的冲突的,相对来讲至少目前OSGi已经有所落后了,不知道EEG具体是怎么考虑的.....在SCA规范和OSGi规范的层面上来比较的话,三十乱弹blog中的一句话:“SCA规范中目前对SCA容器的实现尚没有一个指导性的意见,但是OSGI规范在这方面已经做的很完善了。OSGI规范中定义了Framework、Start Level、Package Admin、Security,详细描述了不同组件之间的依赖规则(静态依赖,动态导入),不同组件之间使用独立的类名称空间。”点出了要点。

分享到:
评论
4 楼 galaxystar 2006-10-15  
SOA与SCA,名字上只相差一个字母!内容上变化也不大!
为什么不去完善SOA,而要另起炉灶呢?
3 楼 行为艺术家 2006-10-13  
blueoxygen 写道
行为艺术家 写道
进入SOA也不错,请问那家公司开始弄这个了?

SAP's NetWeaver platform


德国SAP,不知大连的这家招程序员不?
2 楼 blueoxygen 2006-10-13  
行为艺术家 写道
进入SOA也不错,请问那家公司开始弄这个了?

SAP's NetWeaver platform
1 楼 行为艺术家 2006-10-12  
进入SOA也不错,请问那家公司开始弄这个了?

相关推荐

    基于SCA的企业应用系统构架研究与实现

    ### 基于SCA的企业应用系统构架研究与实现 #### 1. 建立信息系统构架的必要性 随着信息技术与通讯网络的迅速发展,越来越多的企业开始意识到信息化对于提升竞争力的重要性。然而,企业在信息化过程中面临诸多挑战...

    SCA开发:开发示例SCA应用程序

    本文将说明开发和部署SCA应用程序的主要概念。我们将说明如何创建组件实现来提供远程服务、本地服务、配置属性和服务引用以及如何创建组件、入口点、外边服务和模块。示例应用程序:InnovaSolutions开发我们将详细...

    sca知识体系了解应用

    面向服务组件的架构(Service Component Architecture,SCA)是一种用于构建和管理企业级应用程序的模型,旨在简化服务导向架构(SOA)的实现。SCA的核心目标是提供一种语言无关的编程模型,允许开发人员使用统一的...

    基于Tuscany SCA的分布式SCA应用的设计与实现.pdf

    这是因为Tuscany SCA框架提供了丰富的工具和API,使得开发者能够在较低的开发成本下,快速实现分布式应用的设计和开发。同时,这种便利性也有助于缩短研发周期,快速响应业务需求。 6. SCA规范下的分布式应用表现...

    SCA全套资料(经典)

    SCA,全称为Service Component Architecture,是Oracle公司推出的一种服务组件架构,主要应用于企业级分布式应用和服务的构建。这套“SCA全套资料(经典)”包含的资源可能涵盖了SCA的核心概念、设计原则、实现技术...

    sca_SCA凸优化_凸优化SCA_SCA_凸优化_

    SCA(Sequential Convex Approximation)算法是一种在优化领域中广泛应用的方法,特别是在处理凸优化问题时。凸优化是数学优化的一个分支,它专注于找到在凸函数上的全局最小值,因为这些函数具有良好的性质,比如...

    SCA软件架构[定义].pdf

    1. 企业应用集成:SCA 软件架构可以用于企业应用集成,实现不同系统之间的集成。 2. 云计算:SCA 软件架构可以用于云计算,实现云计算中的应用程序集成。 3. 微服务架构:SCA 软件架构可以用于微服务架构,实现...

    IBM SCA设计工具

    **IBM SCA设计工具**是面向服务架构(Service-Oriented Architecture, SOA)系统开发的重要组成部分,尤其在实现复杂企业级应用集成时扮演着关键角色。SOA是一种设计原则,它强调将业务功能作为独立的服务,这些服务...

    MTV-SCA:基于多次试验向量的正弦余弦算法 matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程...

    Tuscany SCA in Action

    SCA是一种规范,用于描述服务组件及其交互方式,旨在简化企业级应用的开发与部署过程。Apache Tuscany是SCA规范的一个开源实现,提供了强大的工具链和运行时环境,使得开发者能够轻松构建、测试和部署基于SCA的服务...

    SCA相关知识学习笔记

    术语缩写:SCA:ServiceComponentArchitectureWPS:WebSphereProcessServerWSIF:WebServiceInvocationFrameworkWID:WebSphereIntegrationDeveloperSDO:ServiceDataObject ()基本组成元素和基本构建单位,也是我们...

    SCA/SDO学习资料

    3. **Eclipse开发SCA实例**:提供使用Eclipse IDE进行SCA开发的步骤,包括创建SCA项目、编写组件、配置服务和绑定,以及运行和调试SCA应用程序。 4. **案例研究**:可能包含一些实际的SCA/SDO应用示例,例如如何...

    SCA:A Sine Cosine Algorithm:SCA 是一种用于解决单目标优化问题的新算法-matlab开发

    Mirjalili,SCA:解决优化问题的正弦余弦算法,基于知识的系统,印刷中,2015 年,DOI: http : //dx.doi.org/10.1016/j.knosys.2015.12.022 链接: http : //...

    SCA介绍及应用实例.pdf

    【SCA介绍及应用实例】 SCA,全称为Service Component Architecture,是面向服务架构(SOA)的一个关键框架,旨在简化服务的构建、...通过理解和应用SCA,开发人员可以构建出更加高效、可扩展和适应性强的业务系统。

    SCA介绍及实例

    在现代软件开发中,开源组件的广泛使用使得SCA成为保障代码安全的重要工具。通过SCA,开发者可以了解项目中依赖的开源库、框架和组件的详细信息,包括版本、许可证和潜在的安全漏洞。 SCA工作的核心是构建软件的...

    SCA_sca算法_SCA_sca程序代码_sca算法代码_

    这里的"SCA_sca算法_SCA_sca程序代码_sca算法代码"标题和描述提示我们,这个压缩包包含的是关于SCA算法的源程序代码,供学习和研究使用。 SCA算法主要分为几个关键步骤: 1. 数据收集:这是侧信道分析的第一步,...

    sca:Node.js的源代码分析器

    "sca: Node.js的源代码分析器"正是为了解决这个问题而诞生的工具。 1. **模块耦合检测** 模块耦合是衡量软件系统中各个模块相互依赖程度的指标。高度耦合的模块可能导致代码难以维护和扩展。通过Node.js源代码分析...

Global site tag (gtag.js) - Google Analytics