3. SCA实现介绍
前面说过对SCA的实现,其实是一个支撑平台。在具体给企业实施中,要使用这个平台开发和部署企业的业务模块。上面介绍的SCA中的基本概念都是针对开发和部署企业业务模块的。我么要有一个平台来让这些composite,component跑起来,提供服务。这个平台就是SCA实现。
在实际的SCA实现中,应该包括三大块:开发工具(studio),管理平台(platform),和运行时(runtime)。
3.1. 开发工具是用来图形化开发组件的。用文本方式编辑component,service等是不现实的。目前eclipse社区提供一个开发工具STP SCA Tools (http://www.eclipse.org/stp/sca/index.php)。他以eclipse插件的形式发布。
图3_1
3.2. 管理平台,平台应该是和runtime密切配合的,目前apache tuscany只提供一个简单的domain manager。目前可以deploy composite,创建node等一些简单功能。 这个要差的很多。管理平台要能对composite application的配置和管理,包括deploy,undeploy,start,stop等。对node的配置和管理。权限的管理。Property的定义等等。
图3_2
3.3. 运行时,apache tuscany提供了很好的运行时环境。运行时是保证application运行的基础。SCA的概念都需要得到运行时的支持。例如,一个基于java实现的sca application会包括一个定义application的xml文件,表示组成application的一些composite和compoent, 还有一些实现类的class文件。要把这个application运行起来,对外提供服务,runtime就要解析xml文件,得到component和其对应实现类,并把所有的component通过service和reference联系起来,这些都在在runtime里得到实现,runtime是真正把application跑起来的支撑平台。作为一个轻量级SCA框架,Tuscany提供了松散耦合的框架结构,并提供一套可扩展的机制。可扩展性在SCA里是很基本,很重要的需求。无论是implementation还是binding,都需要支持客户化扩展。Tuscany本身提供了java,script等implementation类型的支持,同时也对很多的binging类型提供支持。