什么是Tuscany

一、背景介绍

Tuscany 是 Apache 的开源项目,它是 IBM、Oracle、SAP 等厂商联合成立的 SOA 标准化组织 -OSOA 支持下开发出的 SCA 框架,它既是开源界 SCA 的试金石,也是当前开源界最成熟的 SCA (SCA: Service Component Architecture)框架之一。

tuscany是一套开源的SCA框架模型,是做SOA的基础架构,SOA它是面向服务的体系结构,是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来

二、知识剖析

SCA是什么?

SCA为构建基于SOA的应用和解决方案提供了编程模型。它基于这样的理念:将业务功能作为一系列的服务而提供,并由这一系列的服务组装起来的解决方案来满足特定业务需求。这些组合的应用既包括为应用而新创建的特定服务,也包括源自已已存在系统和应用的业务逻辑,这些业务逻辑作为组合构件的一部分被复用。SCA既为服务的组合也为服务构件的创建提供了模型,包括对SCA组组合构件中对已存在应用功能的复用。

(2)

SCA的基础工件就是component,它是SCA的构成单元。构件(component)由一个实现的可配置(implementation)实例所组成。在该构件中,实现是提供业务功能的程序代码片段。该业务功能作为服务(service)而提供,为其他构件所使用。实现也许依赖于由其他构件所提供的服务,这些依赖被称作”引用”(reference)。实现可以有一个可设置的属性(properties),该属性是可以影响业务功能操作的数据值。构件通过提供属性值和连线(wire)到由其他构件提供服务的引用来配置实现。

三、常见问题

Tuscany的例子很少。官网已经不维护了,建议多百度,看师兄日报。

四、解决方案

SCA装配模型在Tuscany中是用一系列接口表示的。如下是些关键的元素。

SCA component 是配置化的SCA实现的实例,它可以提供服务或消费服务。

SCA service用于声明实现的可以被外部访问的服务

SCA reference用于表示该实现对某些其他实现所提供的服务的依赖。该依赖的服务可以通过配置来指定。

Implementation是用于描述软件技术的概念,例如在面向服务的应用中实现了一个或多个服务的Java 类,BEPL,XSLT转换,C++类。SCA composite也是implementaion。

Interface定义了一个或多个业务功能。这些业务功能通过Service提供,通过Reference让其他组件使用。服务是由实现的接口来定义的。现在SCA支持两种接口类型系统:Java接口、SWDL portType

SCA composite是SCA域中的compositon的基础单元。SCA Composite是组件的装配,服务、应用和wire都互相连接。

Binding是被服务和引用所使用的。引用使用绑定来描述访问机制,该机制用于访问连接的服务。服务使用绑定来描述客户程序调用服务的访问机制。

Property是考虑到有的实现配置需要显式地设置数据值。该数据值由组件提供,当然也可能来源于容器composite的属性。

五、扩展思考

什么是Dubbo?它们之前区别?

提问与回答


IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧 !

师兄带你入门!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 场景问题# 1.1 扩展客户管理的功能## 考虑这样一个应用:扩展客户管理的功能。 既然是扩展功能,那么肯定是...
    七寸知架构阅读 2,986评论 1 58
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,273评论 19 139
  • 撰文:夕颜 |夕颜1977 十二月再过两天就过去了。 十二月参加『自由写作30天』,也马上就要结束了。 再过两天,...
    夕颜1977阅读 481评论 0 1
  • 神,垂死!
    小落花阅读 175评论 0 2
  • 简介终端的两种工作模式:以行为单位的工作模式,以字符数或时间为单位自定义模式 终端判断函数: int isatty...
    陈伟志阅读 899评论 0 1