SOA的存在依靠標(biāo)準(zhǔn)的梳理,因此我們必須學(xué)會怎樣利用它們,而不是盲目的擴大它。
面向服務(wù)架構(gòu)要是沒有標(biāo)準(zhǔn)會變成什么樣子?如果沒有這么大量而且復(fù)雜的SOA標(biāo)準(zhǔn)存在,SOA可以更好地發(fā)展嗎?可能在現(xiàn)在的你我眼中都或多或少的有了對標(biāo)準(zhǔn)的依賴和重視。試想,難道SOA的發(fā)展是因為這些標(biāo)準(zhǔn)才變的更好的?
就像更簡單的腳本語言一樣,Java和Java EE 也是由于標(biāo)準(zhǔn)過多而造成了隔閡。如果SOA標(biāo)準(zhǔn)和規(guī)格繼續(xù)到增多而且變得越來越復(fù)雜的話,SOA將遭受一樣命運。我們已經(jīng)看到專業(yè)IT人員為SOA標(biāo)準(zhǔn)尋找的出路――很簡單的REST Web服務(wù)。標(biāo)準(zhǔn)到了應(yīng)該進(jìn)行精簡的時候了。
要想阻止SOA標(biāo)準(zhǔn)的出臺真的是件很不容易的事。很多時候,標(biāo)準(zhǔn)的出臺和支持都是存在政治利益,是為了支持軟件提供商的營銷計劃而指定的。那些僥幸出臺的標(biāo)準(zhǔn)為開發(fā)者造成了巨大影響,所以,其結(jié)果就是希望出臺沒有缺陷的標(biāo)準(zhǔn)并使它成為最適用的標(biāo)準(zhǔn)。在大量SOA標(biāo)準(zhǔn)出臺之前,我還是應(yīng)該重新審視SOA標(biāo)準(zhǔn),對現(xiàn)有的SOA標(biāo)準(zhǔn)做一下徹底的分析和研究。 這就是本系列文章的主旨。
我們將關(guān)注主要的SOA標(biāo)準(zhǔn)并努力找到哪些標(biāo)準(zhǔn)是可被采用的。不過可惜這不是容易的任務(wù)。明確哪些標(biāo)準(zhǔn)本應(yīng)是大量普及的標(biāo)準(zhǔn),現(xiàn)在卻僅僅小范圍使用,不被大眾接受使用,給人的感覺就像被冷落怠慢或者沒有歸屬感一樣。可是,現(xiàn)在有大量已經(jīng)存在的SOA標(biāo)準(zhǔn)而且這些標(biāo)準(zhǔn)經(jīng)常改變,所以對它們一一地討論和研究是根本不可能的。所有標(biāo)準(zhǔn)又有不同的版本所以整個標(biāo)準(zhǔn)體系非常復(fù)雜。這篇文章里面大概提到70多個單獨標(biāo)準(zhǔn),當(dāng)然,對于一線的IT 工作人員來講,要想同時考慮符合所有標(biāo)準(zhǔn)是很難的事。
這一系列文章將努力引導(dǎo)我們詳細(xì)審視現(xiàn)有的SOA標(biāo)準(zhǔn)。它將列舉出一些得到共識的標(biāo)準(zhǔn),或者提出一些標(biāo)準(zhǔn)中值得注意的地方。它將比較相似的標(biāo)準(zhǔn),并試著將它們之間的關(guān)鍵部分的不同點區(qū)分開本文將列舉SOA標(biāo)準(zhǔn),同時介紹支持這些標(biāo)準(zhǔn)的標(biāo)準(zhǔn)組織。以后的文章將更加深入的剖析人們關(guān)注的大多數(shù)SOA標(biāo)準(zhǔn)。我們將按照類別考察這些標(biāo)準(zhǔn),努力分析它們之間的相似之處和不同點。最終詳細(xì)介紹現(xiàn)存的標(biāo)準(zhǔn),使您和您的企業(yè)能更好的了解現(xiàn)在使用的標(biāo)準(zhǔn)。
我們這里要討論的一些標(biāo)準(zhǔn)本身并不是真正的標(biāo)準(zhǔn),而技術(shù)規(guī)范。它們是技術(shù)規(guī)范、API、協(xié)議和一些SOA概念的集合。為了充分地比較SOA標(biāo)準(zhǔn),我們將與其他的標(biāo)準(zhǔn)及相似的技術(shù)概念進(jìn)行對比。因此,希望你暫時能模糊掉標(biāo)準(zhǔn)、技術(shù)規(guī)范、API 和協(xié)議等等之間的區(qū)別,以便于我們更好本著這個主題進(jìn)行討論。
主要的標(biāo)準(zhǔn)組織
制定了這么多的標(biāo)準(zhǔn),當(dāng)然存在著很多標(biāo)準(zhǔn)組織。這些各自為政的組織可能會混淆標(biāo)準(zhǔn)本身。所以,在我們回顧標(biāo)準(zhǔn)前,最好先了解一下現(xiàn)有的標(biāo)準(zhǔn)組織。按照這個方法,回顧的那些標(biāo)準(zhǔn)只對應(yīng)于那些主要的標(biāo)準(zhǔn)組織。就像前面討論標(biāo)準(zhǔn)時一樣,當(dāng)然也確實存在著大量標(biāo)準(zhǔn)組織,不過,我們?yōu)榱撕喕瘑栴},在這里只詳細(xì)介紹一些主要的標(biāo)準(zhǔn)組織。這些組織并不是都發(fā)布了 SOA標(biāo)準(zhǔn),但是它們都參與技術(shù)性標(biāo)準(zhǔn)的發(fā)布。很多偉大的當(dāng)代技術(shù)人都是這些組織的參與人。那就讓我們?nèi)チ私庖幌滤鼈儼伞?/p>
下面的圖表中列出了一些主要的標(biāo)準(zhǔn)組織。在這,我又使用了“標(biāo)準(zhǔn)”這一術(shù)語,當(dāng)然,它還是涵蓋了一些技術(shù)說明、API等在內(nèi)。OASIS的PeterRoden幫助我完成原始的圖表,為了方便討論,我又稍微的做了一下調(diào)整和平衡。
主要的標(biāo)準(zhǔn)組織:
最近,參與SOA標(biāo)準(zhǔn)制定的較有影響的組織包括:
W3C——世界廣域網(wǎng)聯(lián)盟
OASIS——結(jié)構(gòu)化信息標(biāo)準(zhǔn)促進(jìn)組織
WS-I——網(wǎng)絡(luò)服務(wù)協(xié)作組織
OSOA ——開放式SOA
簡要的介紹一下這些組織,這些描述大部分來自于其所屬于組織的網(wǎng)站。
W3C:W3C 通過定義相關(guān)的說明和指導(dǎo)來促進(jìn)網(wǎng)絡(luò)技術(shù)的發(fā)展,即讓軟件和工具充分的發(fā)掘網(wǎng)絡(luò)的潛能。為了發(fā)揮網(wǎng)絡(luò)的最大潛能,最基礎(chǔ)的網(wǎng)絡(luò)技術(shù)必須要求硬件與軟件之間相互兼容。W3C將這個目標(biāo)稱之為“網(wǎng)絡(luò)共融化”。通過發(fā)布公開化,非私有化和為網(wǎng)絡(luò)語言和協(xié)議提供標(biāo)準(zhǔn),W3C制止和避免了很多因為網(wǎng)絡(luò)混亂而產(chǎn)生的市場混亂。W3C由TimBerners-Lee于1994年創(chuàng)立。
OASIS:結(jié)構(gòu)化信息標(biāo)準(zhǔn)促進(jìn)組織OASIS是非營利性的國際化組織,推動了電子商務(wù)標(biāo)準(zhǔn)的發(fā)展,合并和實施。此組織制定了比其他組織更多的網(wǎng)絡(luò)服務(wù)標(biāo)準(zhǔn),這些標(biāo)準(zhǔn)主要是關(guān)于安全性,電子商務(wù)和標(biāo)準(zhǔn)化的問題,為公共服務(wù)使用的行業(yè)應(yīng)用作出了貢獻(xiàn)。OASIS最初在1993年由SGMLOpen改制而成,并將其名稱在1998年改為OASIS.
WS-I: WS-I是一個特許的工業(yè)化組織,主要是通過平臺,操作系統(tǒng)和編程語言來推進(jìn)網(wǎng)絡(luò)服務(wù)互通性。其主旨是針對現(xiàn)今過多的網(wǎng)絡(luò)服務(wù)標(biāo)準(zhǔn)。在WS-I內(nèi)存在的兩種工作標(biāo)準(zhǔn),基礎(chǔ)分布標(biāo)準(zhǔn)(BP)包括連接分布標(biāo)準(zhǔn)和基礎(chǔ)安全分布標(biāo)準(zhǔn)(BSP)。
JCP:在1998年作為開放的,為修訂和發(fā)展Java技術(shù)的技術(shù)說明推出,同時設(shè)計實行和測試。JCP已經(jīng)促進(jìn)了在JAVA平臺上進(jìn)行開發(fā)的國際化。
OSOA:OSOA 是一個代表工業(yè)領(lǐng)導(dǎo)者們的意圖的組織,定義了為迎合正在挖掘出服務(wù)向?qū)w系的的特點和優(yōu)勢的企業(yè)開發(fā)人員而定義的一種自然程序化模型語言。這個研究會并不是一個標(biāo)準(zhǔn)組織,而是那些希望得到用于快速開發(fā)的程序模型并且投入應(yīng)用的買家們而設(shè)置的。最初成立的時候,其主要向一些正規(guī)的標(biāo)準(zhǔn)體,例如OASIS或 W3C提供一些技術(shù)說明用于將來標(biāo)準(zhǔn)制定的參考。這些企業(yè)的合作伙伴正在為兩個重要的項目而工作服務(wù)成分建筑(SCA)和服務(wù)數(shù)據(jù)對象(SOD)。
對SOA標(biāo)準(zhǔn)進(jìn)行基礎(chǔ)的分類,我們用以下方法去定義和比較一些通用的標(biāo)準(zhǔn):
附件類R 11;為在信息中包含了數(shù)據(jù)擴展而設(shè)置的標(biāo)準(zhǔn)
發(fā)現(xiàn)類–為描述和定位服務(wù)的標(biāo)準(zhǔn)。
事件類–不使用請求-回答模式而使用事件模式來請求服務(wù)的標(biāo)準(zhǔn)
綜合類- 為互連系統(tǒng)系統(tǒng)協(xié)同工作而制定的標(biāo)準(zhǔn)
經(jīng)營類-為控制、監(jiān)視和管理服務(wù)而設(shè)置的標(biāo)準(zhǔn)。
建模類–為設(shè)計SOA體系和元素而服務(wù)的標(biāo)準(zhǔn)這些標(biāo)準(zhǔn)也包含了那些保證模型建立的正確的標(biāo)準(zhǔn)。
協(xié)議類–定義了信息系統(tǒng)和體系結(jié)構(gòu)框架的標(biāo)準(zhǔn)。
處理類- 使服務(wù)支持狀態(tài),數(shù)據(jù)傳輸和時事性的標(biāo)準(zhǔn),經(jīng)常涉及到安全和時事信息。
安全類- 為SOA信息安全和服務(wù)認(rèn)證而制定的標(biāo)準(zhǔn)。
一些標(biāo)準(zhǔn)系列為了應(yīng)付在SOA框架、網(wǎng)絡(luò)服務(wù)或其他專業(yè)領(lǐng)域中遺留下來的缺陷而制定的。例如:網(wǎng)絡(luò)服務(wù)并沒有包括數(shù)據(jù)的信息化,技術(shù)事件的相應(yīng),處理事件和安全等方面。這些功能是一些像JMS、CORBA和IIOP本身所具有的屬性和特點,但是并沒有在網(wǎng)絡(luò)服務(wù)中自然的存在。因此很多的標(biāo)準(zhǔn)嘗試在網(wǎng)絡(luò)服務(wù)中加入信息處理進(jìn)程。其他的一些標(biāo)準(zhǔn)組織則更加的具有戰(zhàn)略眼光,例如格式類和管理類標(biāo)準(zhǔn)便為中間件添加了新的屬性。格式化促使商業(yè)進(jìn)程信息化,但是管理類標(biāo)準(zhǔn)需要在近期的商業(yè)環(huán)境中響應(yīng)政府管理命令。于是,最終一些標(biāo)準(zhǔn)過于絕對,想為SOA體系建立一個通用的建模技術(shù)說明。這些只是我個人對這些標(biāo)準(zhǔn)的觀點和認(rèn)識,為了讓其他人更方便的理解和處理現(xiàn)有的服務(wù)。
以下的表格中列舉了現(xiàn)有的最普遍和實用的SOA標(biāo)準(zhǔn)。今后我們還會更進(jìn)一步的探求某個標(biāo)準(zhǔn),分類理解他們,并將這些信息轉(zhuǎn)達(dá)給客戶那些標(biāo)準(zhǔn)要被采用。但是我們剛剛開始做底層工作,一個確實很長的SOA標(biāo)準(zhǔn)標(biāo)單被列出來,如下:
在接下來的文章中,我們將稍微深刻的剖析一些種類的標(biāo)準(zhǔn)。我們將對比相互競爭的標(biāo)準(zhǔn),找出他們各自的優(yōu)勢。我們還可以預(yù)測一下標(biāo)準(zhǔn)間競爭的結(jié)果,試著分析指出哪個將被采用而那個將被淘汰。
SOA的存在依靠標(biāo)準(zhǔn)的梳理,因此我們必須學(xué)會怎樣利用它們,而不是盲目的擴大它。
相關(guān)文章
- 2021-09-08BIM技術(shù)叢書Revit軟件應(yīng)用系列Autodesk Revit族詳解 [
- 2021-09-08全國專業(yè)技術(shù)人員計算機應(yīng)用能力考試用書 AutoCAD2004
- 2021-09-08EXCEL在工作中的應(yīng)用 制表、數(shù)據(jù)處理及宏應(yīng)用PDF下載
- 2021-08-30從零開始AutoCAD 2014中文版機械制圖基礎(chǔ)培訓(xùn)教程 [李
- 2021-08-30從零開始AutoCAD 2014中文版建筑制圖基礎(chǔ)培訓(xùn)教程 [朱
- 2021-08-30電氣CAD實例教程AutoCAD 2010中文版 [左昉 等編著] 20
- 2021-08-30電影風(fēng)暴2:Maya影像實拍與三維合成攻略PDF下載
- 2021-08-30高等院校藝術(shù)設(shè)計案例教程中文版AutoCAD 建筑設(shè)計案例
- 2021-08-29環(huán)境藝術(shù)制圖AutoCAD [徐幼光 編著] 2013年P(guān)DF下載
- 2021-08-29機械A(chǔ)utoCAD 項目教程 第3版 [繆希偉 主編] 2012年P(guān)DF