|
pigcan
說:
SOA
技術(shù)體系里有幾個核心概念
: A message-- represents the data required to complete some or all parts of a unit of work. An operation-- represents the logic required to process messages in order to complete a unit of work. A service-- represents a logically grouped set of operations capable of performing related units of work. A process-- contains the business rules that determine which service operations are used to complete a unit of automation. In other words, a process represents a large piece of work that requires the completion of smaller units of work.
由此你可以判斷組件所處在的位置
,
并可以了解組件和服務(wù)之間的關(guān)系了
amiracle
說:
簡單來講
: Components can be seen as the mechanism to package, manage and expose services. Component
提供
service,Serivice
是依托于
component
。
kant1981
接著
問:
在
IBM
提出的面向服務(wù)的建模和設(shè)計的時候給出了一個分層的架構(gòu)圖
,
其中企業(yè)組件層處在服務(wù)層的下方
.
SOA
的一個架構(gòu)模板:?
 對于這個圖形,我的理解是service是在component的基礎(chǔ)上有封裝了一層.服務(wù)處在更高的層次上. 于是,我對你說的component是對service打包,管理和暴露的機制不太能理解.能不能具體解釋一下組件如何對服務(wù)進行打包,管理和暴露??
amiracle回答說:例如用EJB開發(fā)的,實現(xiàn)了轉(zhuǎn)帳功能的組件,那么我們可以把他們封裝成serivce,或者說把這些組件的功能expose為service,就是轉(zhuǎn)帳服務(wù),這樣就可以被消費了。所以就看你怎么理解了:) 現(xiàn)在許多開發(fā)工具都可以直接從EJB等生成service。當(dāng)然,也可以先創(chuàng)建service,然后選擇用什么方式來實現(xiàn)。 Creating a Web service using the Bean2WebService tool You can use the Bean2WebService tool from a command line to generate a Web service from a Java? bean using the IBM? WebSphere? run-time environment. pigcan接著說:據(jù)我理解,組件是用以實現(xiàn)功能并實現(xiàn)一些非功能特性的,而服務(wù)則可以是將他的一個封裝以提供對外的通用接口.IBM提供的資料中有很詳細的描述...
最后,我查了一下資料,IBM Developer上有文章如下解釋:參照上圖:層2:企業(yè)組件層。本層由那些負責(zé)實現(xiàn)功能(業(yè)務(wù)組件)和保持公開服務(wù)QoS 的企業(yè)組件(基礎(chǔ)設(shè)施組件,一般由容器提供)組成。這些特殊的組件是企業(yè)和業(yè)務(wù)單元級支持的企業(yè)資產(chǎn)的受管理和控制的集合。層3:服務(wù)層。業(yè)務(wù)選擇來支持和公開的服務(wù)處在這一層。它們可以被發(fā)現(xiàn)或者直接靜態(tài)綁定,接下來被調(diào)用,或者可能的話,編排到合成服務(wù)中。這個服務(wù)公開層同樣提供了獲取企業(yè)范圍組件,業(yè)務(wù)單元特定組件,以及有些情況下,特定項目組建的機制,并且以服務(wù)描述的形式具體化了他們的接口子集。因此,企業(yè)組件使用它們接口提供的功能在運行時提供服務(wù)實現(xiàn)。在這一層的接口公開為一個服務(wù)描述,在這層中他們被公開以提供使用。他們可以獨立存在或者作為合成服務(wù)。
|