什么是Tuscany

一、背景介紹

Tuscany 是 Apache 的開(kāi)源項(xiàng)目,它是 IBM、Oracle、SAP 等廠商聯(lián)合成立的 SOA 標(biāo)準(zhǔn)化組織 -OSOA 支持下開(kāi)發(fā)出的 SCA 框架,它既是開(kāi)源界 SCA 的試金石,也是當(dāng)前開(kāi)源界最成熟的 SCA (SCA: Service Component Architecture)框架之一。

tuscany是一套開(kāi)源的SCA框架模型,是做SOA的基礎(chǔ)架構(gòu),SOA它是面向服務(wù)的體系結(jié)構(gòu),是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱(chēng)為服務(wù))通過(guò)這些服務(wù)之間定義良好的接口和契約聯(lián)系起來(lái)

二、知識(shí)剖析

SCA是什么?

SCA為構(gòu)建基于SOA的應(yīng)用和解決方案提供了編程模型。它基于這樣的理念:將業(yè)務(wù)功能作為一系列的服務(wù)而提供,并由這一系列的服務(wù)組裝起來(lái)的解決方案來(lái)滿(mǎn)足特定業(yè)務(wù)需求。這些組合的應(yīng)用既包括為應(yīng)用而新創(chuàng)建的特定服務(wù),也包括源自已已存在系統(tǒng)和應(yīng)用的業(yè)務(wù)邏輯,這些業(yè)務(wù)邏輯作為組合構(gòu)件的一部分被復(fù)用。SCA既為服務(wù)的組合也為服務(wù)構(gòu)件的創(chuàng)建提供了模型,包括對(duì)SCA組組合構(gòu)件中對(duì)已存在應(yīng)用功能的復(fù)用。

(2)

SCA的基礎(chǔ)工件就是component,它是SCA的構(gòu)成單元。構(gòu)件(component)由一個(gè)實(shí)現(xiàn)的可配置(implementation)實(shí)例所組成。在該構(gòu)件中,實(shí)現(xiàn)是提供業(yè)務(wù)功能的程序代碼片段。該業(yè)務(wù)功能作為服務(wù)(service)而提供,為其他構(gòu)件所使用。實(shí)現(xiàn)也許依賴(lài)于由其他構(gòu)件所提供的服務(wù),這些依賴(lài)被稱(chēng)作”引用”(reference)。實(shí)現(xiàn)可以有一個(gè)可設(shè)置的屬性(properties),該屬性是可以影響業(yè)務(wù)功能操作的數(shù)據(jù)值。構(gòu)件通過(guò)提供屬性值和連線(wire)到由其他構(gòu)件提供服務(wù)的引用來(lái)配置實(shí)現(xiàn)。

三、常見(jiàn)問(wèn)題

Tuscany的例子很少。官網(wǎng)已經(jīng)不維護(hù)了,建議多百度,看師兄日?qǐng)?bào)。

四、解決方案

SCA裝配模型在Tuscany中是用一系列接口表示的。如下是些關(guān)鍵的元素。

SCA component 是配置化的SCA實(shí)現(xiàn)的實(shí)例,它可以提供服務(wù)或消費(fèi)服務(wù)。

SCA service用于聲明實(shí)現(xiàn)的可以被外部訪問(wèn)的服務(wù)

SCA reference用于表示該實(shí)現(xiàn)對(duì)某些其他實(shí)現(xiàn)所提供的服務(wù)的依賴(lài)。該依賴(lài)的服務(wù)可以通過(guò)配置來(lái)指定。

Implementation是用于描述軟件技術(shù)的概念,例如在面向服務(wù)的應(yīng)用中實(shí)現(xiàn)了一個(gè)或多個(gè)服務(wù)的Java 類(lèi),BEPL,XSLT轉(zhuǎn)換,C++類(lèi)。SCA composite也是implementaion。

Interface定義了一個(gè)或多個(gè)業(yè)務(wù)功能。這些業(yè)務(wù)功能通過(guò)Service提供,通過(guò)Reference讓其他組件使用。服務(wù)是由實(shí)現(xiàn)的接口來(lái)定義的?,F(xiàn)在SCA支持兩種接口類(lèi)型系統(tǒng):Java接口、SWDL portType

SCA composite是SCA域中的compositon的基礎(chǔ)單元。SCA Composite是組件的裝配,服務(wù)、應(yīng)用和wire都互相連接。

Binding是被服務(wù)和引用所使用的。引用使用綁定來(lái)描述訪問(wèn)機(jī)制,該機(jī)制用于訪問(wèn)連接的服務(wù)。服務(wù)使用綁定來(lái)描述客戶(hù)程序調(diào)用服務(wù)的訪問(wèn)機(jī)制。

Property是考慮到有的實(shí)現(xiàn)配置需要顯式地設(shè)置數(shù)據(jù)值。該數(shù)據(jù)值由組件提供,當(dāng)然也可能來(lái)源于容器composite的屬性。

五、擴(kuò)展思考

什么是Dubbo?它們之前區(qū)別?

提問(wèn)與回答


IT修真院

“我們相信人人都可以成為一個(gè)工程師,現(xiàn)在開(kāi)始,找個(gè)師兄,帶你入門(mén),掌控自己學(xué)習(xí)的節(jié)奏,學(xué)習(xí)的路上不再迷?!薄?/p>

這里是技能樹(shù).IT修真院,成千上萬(wàn)的師兄在這里找到了自己的學(xué)習(xí)路線,學(xué)習(xí)透明化,成長(zhǎng)可見(jiàn)化,師兄1對(duì)1免費(fèi)指導(dǎo)??靵?lái)與我一起學(xué)習(xí)吧 !

師兄帶你入門(mén)!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1 場(chǎng)景問(wèn)題# 1.1 擴(kuò)展客戶(hù)管理的功能## 考慮這樣一個(gè)應(yīng)用:擴(kuò)展客戶(hù)管理的功能。 既然是擴(kuò)展功能,那么肯定是...
    七寸知架構(gòu)閱讀 3,052評(píng)論 1 58
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,715評(píng)論 19 139
  • 撰文:夕顏 |夕顏1977 十二月再過(guò)兩天就過(guò)去了。 十二月參加『自由寫(xiě)作30天』,也馬上就要結(jié)束了。 再過(guò)兩天,...
    夕顏1977閱讀 543評(píng)論 0 1
  • 神,垂死!
    小落花閱讀 188評(píng)論 0 2
  • 簡(jiǎn)介終端的兩種工作模式:以行為單位的工作模式,以字符數(shù)或時(shí)間為單位自定義模式 終端判斷函數(shù): int isatty...
    陳偉志閱讀 937評(píng)論 0 1

友情鏈接更多精彩內(nèi)容