久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

[原創(chuàng)]淺析深究什么是SOA?

 dong6349 2015-10-14

                              

淺析深究什么是SOA,?

金蝶中間件有限公司總經(jīng)理 奉繼承 博士

閱讀提示:

本文探討SOA概念背后的核心內(nèi)涵,,如何將SOA落地的實(shí)務(wù)方法。

金蝶中間件作為全球領(lǐng)先的SOA解決方案供應(yīng)商,,擁有中國(guó)唯一全球第四通過(guò)Java EE 5.0認(rèn)證的SOA基礎(chǔ)平臺(tái),;中國(guó)唯一完整實(shí)現(xiàn)TOG-SOA標(biāo)準(zhǔn)模型的中間件解決方案;與北京大學(xué)合作,,國(guó)家“核高基”科技重大專項(xiàng)成果,,承擔(dān)振興國(guó)家基礎(chǔ)軟件的責(zé)任和使命; 中國(guó)唯一入選Gartner全球有能力提供SOA服務(wù)的十九家軟件廠商,。本文就是根據(jù)金蝶中間件readySOA解決方案整理而成的通俗科普文章,。

本文介紹的主要內(nèi)容包括:為什么需要SOA;如何準(zhǔn)確理解SOA,;SOA如何落地,;介紹金蝶中間件ready SOA解決方案。

 

1.     背景

IT行業(yè)就是術(shù)語(yǔ)和縮寫流行的行業(yè),各大廠商都喜歡隔三差五地推出一些新概念,。為了不落人后,,大家都喜歡爭(zhēng)先恐后地跟進(jìn)。有深入研究,、務(wù)實(shí)研發(fā)的供應(yīng)商,,能夠?qū)⒏拍盥涞兀粩嗤瞥鰟?chuàng)新的產(chǎn)品和服務(wù),,贏得競(jìng)爭(zhēng)優(yōu)勢(shì),。但“貼標(biāo)簽”的也大有人在,而且趨勢(shì)是越貼越多,,跟風(fēng)炒作,,“魚目混珠,泥沙俱下”,,以至于“混繞視聽(tīng)”了,。

SOA就是這俱多“三字母”縮寫的概念之中的最流行和熱門的一個(gè)。但目前,,SOA概念和解決方案,,話語(yǔ)權(quán)方面基本上被國(guó)外巨頭所控制,特別是大的中間件廠商,。

但是真正能夠完整實(shí)現(xiàn)SOA的落地解決方案和案例很少,,刻意包裝的成分比較多,特別是應(yīng)用架構(gòu)方面,。重技術(shù),,輕方法論,造成企業(yè)實(shí)施SOA缺乏足夠的架構(gòu)方法,、SOA治理,、SOA實(shí)施運(yùn)維方面的最佳實(shí)踐,因此企業(yè)實(shí)施SOA缺乏系統(tǒng)的指導(dǎo),。

另一方面,,國(guó)內(nèi)的不少軟件企業(yè),由于不能提供完整意義上的SOA解決方案,,只能提供部分的組件,,小部分特性符合SOA思想,所以就任意曲解SOA的含義,,隨意解析SOA的概念,。以至于國(guó)內(nèi)沒(méi)有一家軟件企業(yè)不宣傳SOA,不宣稱其產(chǎn)品符合SOA架構(gòu)的,。由此造成,,許多企業(yè)和客戶對(duì)SOA是非常茫然的,,對(duì)SOA的價(jià)值也轉(zhuǎn)向懷疑和抵觸。

這種廠商之間的無(wú)序競(jìng)爭(zhēng),,不利于國(guó)內(nèi)企業(yè)的自主創(chuàng)新,,也不利于企業(yè)導(dǎo)入和實(shí)施有效的SOA,實(shí)現(xiàn)SOA的商業(yè)價(jià)值,。

本文試圖就SOA的來(lái)龍去脈,,外延內(nèi)涵和前世今生,來(lái)一個(gè)全面的闡釋,。一家之言,,權(quán)作業(yè)界參考,希望帶動(dòng)大家做一些更深入的思考,。文章比較長(zhǎng),,如果興趣不夠,也可以就此打住,。

 

2.     為什么需要SOA

SOA的出現(xiàn)不僅僅是廠商炒作的結(jié)果,,本質(zhì)上是兩種力量驅(qū)動(dòng)的結(jié)果:需求拉動(dòng)、技術(shù)推動(dòng),。業(yè)務(wù)需求的拉動(dòng),,希望解決業(yè)務(wù)應(yīng)用的問(wèn)題;技術(shù)發(fā)展的推動(dòng),,使得SOA具備了技術(shù)上的可行性,,軟件技術(shù)的發(fā)展推動(dòng)了IT創(chuàng)新的商業(yè)價(jià)值。

2.1.    需求拉動(dòng)

需求拉動(dòng)方面,,主要來(lái)自于兩種信息化的困境,。一個(gè)是“信息孤島”造成基于系統(tǒng)之間互聯(lián)互通的整合需求;另一個(gè)是業(yè)務(wù)的變化所導(dǎo)致對(duì)IT靈活性,,以適應(yīng)變化的需求。

目前國(guó)內(nèi)外基本情況類似,,經(jīng)過(guò)30年的信息化建設(shè),,許多企業(yè)和政府部門都在不同時(shí)期、應(yīng)用不同技術(shù),、與不同的廠商合作,,建設(shè)了不同規(guī)模的應(yīng)用系統(tǒng),造成了信息化不是沒(méi)有系統(tǒng),,而是信息孤島太多的問(wèn)題,,而且不是沒(méi)有數(shù)據(jù),而是信息不一致,,難以整合,。因此,,互連互通是當(dāng)前信息化中的核心問(wèn)題和核心需求。順便說(shuō)一句,,那些認(rèn)為中國(guó)企業(yè)的信息化起步晚,,歷史負(fù)擔(dān)少,可以快速部署全新SOA,,可以運(yùn)用推倒重來(lái)的策略是不了解中國(guó)企業(yè)信息化,,自我想當(dāng)然的結(jié)果。事實(shí)上,,我國(guó)信息化無(wú)論是金融,、電信、電力等大行業(yè),,還是中小工商企業(yè),,“孤島現(xiàn)象”還是非常嚴(yán)重,遺留系統(tǒng)的整合不一定就少,,而且我國(guó)軟件供應(yīng)商的系統(tǒng)普遍架構(gòu)能力比較弱,,整合難度一點(diǎn)也不低。

這種互聯(lián)互通需求,,既包括企業(yè)內(nèi)的各種應(yīng)用系統(tǒng)之間的集成,,也包括集團(tuán)企業(yè)總部與下屬企業(yè)、企業(yè)與上下游伙伴之間的業(yè)務(wù)協(xié)同,。

 

點(diǎn)擊查看原圖

 企業(yè)內(nèi)互聯(lián)互通的需求

另一方面,,激烈的競(jìng)爭(zhēng)和產(chǎn)業(yè)變革,需要企業(yè)不斷調(diào)整其組織,、流程和商業(yè)模式,,以獲得競(jìng)爭(zhēng)優(yōu)勢(shì),造成業(yè)務(wù)的不斷變化,,而且隨著經(jīng)濟(jì)全球化,,這種變革的步伐在不斷加快。但僵化的IT基礎(chǔ)設(shè)施難以迅速響應(yīng)這種變化,,造成IT與業(yè)務(wù)的不平衡和不匹配,。因此,IT的靈活性以適應(yīng)業(yè)務(wù)變革的需求,,也是當(dāng)前信息化建設(shè)過(guò)程中所面臨的最大挑戰(zhàn),。而且這方面的變革速度和變革幅度比國(guó)外許多企業(yè)都要大得多,畢竟我們的企業(yè)還是在快速成長(zhǎng),,快速成熟的過(guò)程之中,。

點(diǎn)擊查看原圖

業(yè)務(wù)靈活性的需求需要一種新的架構(gòu)技術(shù)來(lái)支撐企業(yè)實(shí)現(xiàn)其快速的靈活應(yīng)變的業(yè)務(wù)戰(zhàn)略。傳統(tǒng)的信息化方法和軟件研發(fā)方法是基于業(yè)務(wù)需求的直接映射,。這種需求驅(qū)動(dòng)的信息系統(tǒng)最大的缺陷就是對(duì)變化的適應(yīng)性差,,這也是傳統(tǒng)軟件工程造成的“軟件危機(jī)”最直接的表現(xiàn),。如果要滿足業(yè)務(wù)需求的柔性,就需要按照架構(gòu)驅(qū)動(dòng),,對(duì)業(yè)務(wù)進(jìn)行適當(dāng)?shù)某橄?,通過(guò)服務(wù)的表達(dá)和業(yè)務(wù)過(guò)程的原子化,來(lái)滿足系統(tǒng)是按照企業(yè)架構(gòu)來(lái)構(gòu)造,,這種架構(gòu)是動(dòng)態(tài)重構(gòu)技術(shù)來(lái)支撐的,,我們今天知道了,這種架構(gòu)就是SOA,。

2.2.    技術(shù)推動(dòng)

軟件出現(xiàn)最早是用于科學(xué)計(jì)算,,然后是計(jì)算機(jī)輔助設(shè)計(jì)、輔助制造等等工業(yè)應(yīng)用,。在企業(yè)管理領(lǐng)域大規(guī)模應(yīng)用后,,業(yè)務(wù)需求不斷的變化、系統(tǒng)不斷增加,、流程更復(fù)雜,、系統(tǒng)越來(lái)越不堪重負(fù),出現(xiàn)了需求交付方面的重大挑戰(zhàn),,以至于人們用“軟件危機(jī)”來(lái)描述軟件工業(yè)所面臨的困境,。

軟件技術(shù)發(fā)展過(guò)程中,一直在尋求解決四個(gè)基本問(wèn)題的方法:質(zhì)量問(wèn)題,、效率問(wèn)題,、互操作問(wèn)題、柔性構(gòu)造問(wèn)題,。這些問(wèn)題今天依然困擾著軟件行業(yè),。

造成這個(gè)局面的原因是異構(gòu)性和標(biāo)準(zhǔn)規(guī)范的滯后。

  • 屏蔽異構(gòu)性

異構(gòu)性表現(xiàn)在計(jì)算機(jī)的軟硬件之間的異構(gòu)性,,包括硬件(CPU和指令集,、硬件結(jié)構(gòu)、驅(qū)動(dòng)程序等),,操作系統(tǒng)(不同操作系統(tǒng)的API和開(kāi)發(fā)環(huán)境),、數(shù)據(jù)庫(kù)(不同的存儲(chǔ)和訪問(wèn)格式)等等。長(zhǎng)期以來(lái),,高級(jí)語(yǔ)言依賴于特定的編譯器和操作系統(tǒng)API來(lái)編程,而他們是不兼容的,,因此軟件必須依賴于開(kāi)發(fā)和運(yùn)行的環(huán)境,。

造成異構(gòu)的原因源自市場(chǎng)競(jìng)爭(zhēng)、技術(shù)升級(jí)以及保護(hù)投資等因素,。希望屏蔽異構(gòu)平臺(tái)的差異性問(wèn)題是促成中間件發(fā)展的驅(qū)動(dòng)力之一,。而支持SOA架構(gòu)的中間件平臺(tái),,已經(jīng)在很大程度上屏蔽了系統(tǒng)環(huán)境的差異性,提供了一致的計(jì)算環(huán)境,。

  • 實(shí)現(xiàn)互操作

因?yàn)楫悩?gòu)性,,產(chǎn)生的結(jié)果是軟件依賴于計(jì)算環(huán)境,使得各種不同軟件之間在不同平臺(tái)之間不能移植,,或者移植非常困難,。而且,因?yàn)榫W(wǎng)絡(luò)協(xié)議和通信機(jī)制的不同,,這些系統(tǒng)之間還不能有效地相互集成,。

造成互操作性不好的原因,主要是標(biāo)準(zhǔn)的滯后,。解決軟件之間的互操作性問(wèn)題也是促成中間件發(fā)展的驅(qū)動(dòng)力之一,。而SOA技術(shù)從一開(kāi)始就強(qiáng)調(diào)了標(biāo)準(zhǔn)的重要性,包括中間件平臺(tái)的實(shí)現(xiàn)上都是基于全球共同的標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn),。

  • 共性凝練和復(fù)用

軟件應(yīng)用領(lǐng)域越來(lái)越多,,相同領(lǐng)域的應(yīng)用系統(tǒng)之間許多基礎(chǔ)功能和結(jié)構(gòu)是有相似性的,每次開(kāi)發(fā)系統(tǒng)都從零開(kāi)始絕對(duì)不是一種好的方法,,也是對(duì)質(zhì)量和效率的很大的傷害,。

盡可能多地凝練共性并復(fù)用以提高軟件開(kāi)發(fā)效率和質(zhì)量,通過(guò)中間件通過(guò)提供簡(jiǎn)單,、一致,、集成的開(kāi)發(fā)和運(yùn)行環(huán)境,簡(jiǎn)化分布式系統(tǒng)的設(shè)計(jì),、編程和管理,,這也是SOA發(fā)展的重要推動(dòng)力。

軟件技術(shù)發(fā)展內(nèi)容,,包括更好的程序設(shè)計(jì)語(yǔ)言,、更好的平臺(tái)和軟件開(kāi)發(fā)技術(shù),如面向?qū)ο?、組件開(kāi)發(fā),、面向服務(wù)等等。而這方面,,在技術(shù)上逐漸發(fā)展的成果大部分都凝聚在今天的SOA解決方案之中,。
點(diǎn)擊查看原圖
程序設(shè)計(jì)語(yǔ)言的發(fā)展

而這些技術(shù)推動(dòng)因素,從本質(zhì)上是通過(guò)復(fù)用,、松耦合,、互操作(標(biāo)準(zhǔn))等機(jī)制來(lái)提高軟件質(zhì)量、加快軟件研發(fā)效率,、使研發(fā)出來(lái)的產(chǎn)品能夠相互集成并靈活適應(yīng)變化,。

這些技術(shù)因素逐漸推動(dòng)了SOA架構(gòu)的形成和發(fā)展,。

點(diǎn)擊查看原圖

SOA架構(gòu)的發(fā)展

 

3.     如何準(zhǔn)確理解SOA

我并不打算介紹SOA的定義,事實(shí)上到現(xiàn)在為止,,還沒(méi)有一個(gè)權(quán)威的SOA標(biāo)準(zhǔn)定義,,因?yàn)閺牟煌嵌龋煌瑥S商和學(xué)術(shù)團(tuán)隊(duì)會(huì)有不同的答案,。爭(zhēng)論定義本身,,不是目的。

OASIS(一個(gè)SOA標(biāo)準(zhǔn)組織)給予出的SOA定義“SOA是一個(gè)范式,,用于組織和利用可能處于不同所有權(quán)范圍控制下的分布式系統(tǒng),。”

維基百科給出的SOA定義“面向服務(wù)的體系結(jié)構(gòu)(Service-oriented architecture)是構(gòu)造分布式系統(tǒng)的應(yīng)用程序的方法,。它將應(yīng)用程序功能作為服務(wù)發(fā)送給最終用戶或者其他服務(wù),。它采用開(kāi)放標(biāo)準(zhǔn)、與軟件資源進(jìn)行交互并采用表示的標(biāo)準(zhǔn)方式,?!薄?/p>

這些定義本身,,一般人員要準(zhǔn)確理解是非常困難的,,既便是專業(yè)人士,未必能夠深刻理解其內(nèi)涵,。如何更加形象理解SOA,?怎么通俗化解析SOA的核心含義?

3.1.    如何形象理解SOA

事實(shí)上,,SOA的思想我國(guó)很早就有了,,印刷術(shù)的發(fā)展過(guò)程其思想就完整體現(xiàn)了SOA的核心含義。

印刷的內(nèi)容――文字,,在秦始皇統(tǒng)一六國(guó)之前,,各國(guó)的文字是不統(tǒng)一的,據(jù)說(shuō)許多常用的文字有十幾種寫法和讀音,,妨礙了各國(guó)之間的文化交流,,就象SOA之前,各種軟件平臺(tái),、各種開(kāi)發(fā)工具和各種接口的組件之間,,沒(méi)有統(tǒng)一的標(biāo)準(zhǔn),對(duì)軟件系統(tǒng)之間的整合造成巨大的困難,。

因此,,偉大的始皇帝統(tǒng)一了六國(guó)文字,“書同文、車同軌”就是通過(guò)標(biāo)準(zhǔn)解決“復(fù)用”和“互操作”等問(wèn)題,。這也為大規(guī)模的印刷和文明發(fā)展提供了一個(gè)良好的基礎(chǔ),這種“統(tǒng)一封裝”的文字,,對(duì)文化交流起到了一個(gè)“互操作”的標(biāo)準(zhǔn)作用,。

 

點(diǎn)擊查看原圖

SOA的形象解析

在沒(méi)有印刷術(shù)之前,書籍要依賴于手工抄寫,,這樣效率當(dāng)然是非常低下,,而且質(zhì)量也不能獲得一致性的保證,也就是書籍還無(wú)法“復(fù)用”,。中國(guó)人首先發(fā)明了刻版印刷術(shù),,就是將書籍刻成一塊一塊的凸字版,然后就可以大規(guī)模進(jìn)行印刷了,,當(dāng)印刷出來(lái)的書籍脫銷時(shí),,下次還可以繼續(xù)使用,大大提高了效率,,這就是“復(fù)用”,,軟件通過(guò)組件的封裝,也可以達(dá)到重復(fù)和在不同場(chǎng)合多次使用的“復(fù)用”效果,。

刻版印刷術(shù)有個(gè)很大的問(wèn)題就是文字之間是緊耦合的,,同樣一個(gè)字,在另一部書之中是不能“復(fù)用”的,,必須重新雕刻,,也就是說(shuō)刻版印刷是沒(méi)有“編排”特性的。就如軟件技術(shù)中微軟VB開(kāi)發(fā)的Com+組件就只能在Windows環(huán)境之中使用,,它不能與Java開(kāi)發(fā)的EJB組件進(jìn)行復(fù)用和編排,,因?yàn)樗麄兣c開(kāi)發(fā)環(huán)境和運(yùn)行環(huán)境是緊耦合的,要在UNIX環(huán)境下使用,,必須重新開(kāi)發(fā)(相當(dāng)于重新“刻版”),。活字印刷就是通過(guò)文字與版面之間的松耦合,,通過(guò)“排版”來(lái)實(shí)現(xiàn)一部書的印刷版面的,,這種松耦合就大大提高了文字的字模之間的復(fù)用和編排效率。我們標(biāo)準(zhǔn)封裝的“服務(wù)”就類似一個(gè)一個(gè)的字模,,通過(guò)服務(wù)編排(“排版”)來(lái)實(shí)現(xiàn)業(yè)務(wù)流程,。

統(tǒng)一文字和活字印刷促進(jìn)了人類文明進(jìn)步,而SOA促進(jìn)全球IT架構(gòu)和應(yīng)用的革命,。

3.2.    SOA的核心要素

要準(zhǔn)確全面理解SOA,,首先必須理解SOA的核心要素:

 

點(diǎn)擊查看原圖

SOA的核心要素
SOA的目標(biāo)就是實(shí)現(xiàn)靈活可變的IT系統(tǒng)。要達(dá)到靈活性,通過(guò)三個(gè)途徑來(lái)解決:標(biāo)準(zhǔn)化封裝,、復(fù)用,、松耦合可編排。
互操作(標(biāo)準(zhǔn)化封裝),、復(fù)用,、松耦合等SOA技術(shù)的內(nèi)在機(jī)制,也是中間件技術(shù)和產(chǎn)品的本質(zhì)特征,。
  • 標(biāo)準(zhǔn)化封裝(互操作性)

傳統(tǒng)軟件架構(gòu),,因?yàn)榉庋b的技術(shù)和平臺(tái)依賴性,一直沒(méi)有徹底解決互操作問(wèn)題,?;ヂ?lián)網(wǎng)前所未有的開(kāi)放性意味著各節(jié)點(diǎn)可能采用不同的組件、平臺(tái)技術(shù),,對(duì)技術(shù)細(xì)節(jié)進(jìn)行了私有化的約束,,構(gòu)件模型和架構(gòu)沒(méi)有統(tǒng)一標(biāo)準(zhǔn),從而導(dǎo)致架構(gòu)平臺(tái)自身在組件描述,、發(fā)布,、發(fā)現(xiàn)、調(diào)用,、互操作協(xié)議及數(shù)據(jù)傳輸?shù)确矫娉尸F(xiàn)出巨大的異構(gòu)性,。各種不良技術(shù)約束的結(jié)果是軟件系統(tǒng)跨互聯(lián)網(wǎng)進(jìn)行交互變得困難重重,最終導(dǎo)致了跨企業(yè)/部門的業(yè)務(wù)集成和重組難以靈活快速的進(jìn)行,。

在軟件的互操作方面,,傳統(tǒng)中間件只是實(shí)現(xiàn)了訪問(wèn)互操作,即通過(guò)標(biāo)準(zhǔn)化的API實(shí)現(xiàn)了同類系統(tǒng)之間的調(diào)用互操作,,而連接互操作還是依賴于特定的訪問(wèn)協(xié)議,,如JAVA使用RMI,CORBA使用IIOP等,。而SOA通過(guò)標(biāo)準(zhǔn)的,、支持Internet、與操作系統(tǒng)無(wú)關(guān)的SOAP協(xié)議實(shí)現(xiàn)了連接互操作,。而且,,服務(wù)的封裝是采用XML協(xié)議,具有自解析和自定義的特性,,這樣,,基于SOA的中間件還可以實(shí)現(xiàn)語(yǔ)義互操作。

SOA要實(shí)現(xiàn)互操作,,就是通過(guò)一系列的標(biāo)準(zhǔn)族,,來(lái)實(shí)現(xiàn)訪問(wèn)、連接和語(yǔ)義等各種層面的互操作。

  • 軟件復(fù)用

軟件復(fù)用,,即軟件的重用,,也叫再用,是指同一事物不作修改或稍加改動(dòng)就多次重復(fù)使用,。從軟件復(fù)用技術(shù)的發(fā)展來(lái)看,,就是不斷提升抽象級(jí)別,擴(kuò)大復(fù)用范圍,。最早的復(fù)用技術(shù)是子程序,人們發(fā)明子程序,,就可以在不同系統(tǒng)之間進(jìn)行復(fù)用了,。但是,子程序是最原始的復(fù)用,,因?yàn)檫@種復(fù)用范圍是一個(gè)可執(zhí)行程序內(nèi)復(fù)用,,靜態(tài)開(kāi)發(fā)期復(fù)用,如果子程序修改,,意味著所有調(diào)用這個(gè)子程序的系統(tǒng)必須重新編譯,、測(cè)試和發(fā)布。

點(diǎn)擊查看原圖


SOA的復(fù)用

為了解決這個(gè)問(wèn)題,,人們發(fā)明了組件(或者叫控件),,如MS操作系統(tǒng)下的DLL組件。組件將復(fù)用提升了一個(gè)層次,,因?yàn)榻M件可以在一個(gè)系統(tǒng)內(nèi)復(fù)用(同一種操作系統(tǒng)),,而且是動(dòng)態(tài)、運(yùn)行期復(fù)用,。這樣組件可以單獨(dú)發(fā)展,,組件與組件調(diào)用者之間的耦合度降低。

為解決分布式網(wǎng)絡(luò)計(jì)算之間的組件復(fù)用,,人們發(fā)明了企業(yè)對(duì)象組件,,如(Com+,.NET,EJB等),或者叫分布式組件,。通過(guò)遠(yuǎn)程對(duì)象代理,,來(lái)實(shí)現(xiàn)企業(yè)網(wǎng)絡(luò)內(nèi)復(fù)用,不同系統(tǒng)之間復(fù)用,。

傳統(tǒng)架構(gòu)的核心是組件對(duì)象的管理,。但分布式組件也是嚴(yán)重依賴其計(jì)算環(huán)境,由于構(gòu)件實(shí)現(xiàn)和運(yùn)行支撐技術(shù)之間存在著較大的異構(gòu)性,,不同技術(shù)設(shè)計(jì)和實(shí)現(xiàn)的構(gòu)件之間無(wú)法直接組裝式復(fù)用,。

而現(xiàn)代SOA的重要特征就是以服務(wù)為核心,如WebService,SCA/SDO等。通過(guò)服務(wù),,或者服務(wù)組件來(lái)實(shí)現(xiàn)更高層次的復(fù)用,、解耦和互操作,即SOA架構(gòu)中間件,。

因?yàn)榉?wù)是通過(guò)標(biāo)準(zhǔn)封裝,,服務(wù)組件之間的組裝、編排和重組,,來(lái)實(shí)現(xiàn)服務(wù)的復(fù)用,。而且這種復(fù)用,可以在不同企業(yè)之間,,全球復(fù)用,,達(dá)到復(fù)用的最高級(jí)別,并且是動(dòng)態(tài)可配置的復(fù)用,。

  • 耦合關(guān)系

SOA架構(gòu)在松耦合解耦過(guò)程也發(fā)展到了最后的境界,。傳統(tǒng)軟件將軟件之中核心三部分網(wǎng)絡(luò)連接、數(shù)據(jù)轉(zhuǎn)換,、業(yè)務(wù)邏輯全部耦合在一個(gè)整體之中,,形成“鐵板一塊”的軟件,“牽一發(fā)而動(dòng)全身”,,軟件就難以適應(yīng)變化,。分布式對(duì)象技術(shù)將連接邏輯進(jìn)行分離,消息中間件將連接邏輯進(jìn)行異步處理,,增加了更大的靈活性,。消息代理和一些分布式對(duì)象中間件將數(shù)據(jù)轉(zhuǎn)換也進(jìn)行了分離。而SOA架構(gòu),,通過(guò)服務(wù)的封裝,,實(shí)現(xiàn)了業(yè)務(wù)邏輯與網(wǎng)絡(luò)連接、數(shù)據(jù)轉(zhuǎn)換等進(jìn)行完全的解耦,。

 

點(diǎn)擊查看原圖

SOA不斷解耦的過(guò)程

總之,,從科學(xué)哲學(xué)的角度來(lái)看,SOA是一個(gè)不斷解構(gòu)的過(guò)程,,傳統(tǒng)軟件強(qiáng)調(diào)系統(tǒng)性,,耦合度過(guò)高,所以需要松耦合(解耦),;SOA也是一個(gè)組件粒度的平衡,,集成電路趨勢(shì)是集成度越來(lái)越高,軟件發(fā)展的趨勢(shì)是相反的過(guò)程,;SOA是架構(gòu),,更是方法,,反映了人們對(duì)哲學(xué)思想的追求的原動(dòng)力。

按照這個(gè)特性,,SOA基本上來(lái)說(shuō)與WebService并不是同一個(gè)概念,,SOA并不一定需要WebService實(shí)現(xiàn),理論上可以在其他技術(shù)體系下,,實(shí)現(xiàn)SOA,。但事實(shí)上,到目前為止,,能夠?qū)崿F(xiàn)SOA架構(gòu)風(fēng)格的技術(shù)就是WebService,,因?yàn)樗奶匦院蛷S商的支持力度,使得WebService成為了實(shí)現(xiàn)SOA實(shí)現(xiàn)技術(shù)的事實(shí)標(biāo)準(zhǔn),。也正因?yàn)閃ebService技術(shù)的成熟,,才使得已經(jīng)提出10多年了的SOA思想和概念,得以能夠?qū)崿F(xiàn)落地,,成為一種可以使用的技術(shù)。這也就是回答了SOA和WebService的關(guān)系,。

3.3.    SOA的架構(gòu)框架(Framework)

SOA的核心主體是服務(wù),。所謂“服務(wù)(Service)” ,從業(yè)務(wù)角度而言,,服務(wù)是一個(gè)可重復(fù)的經(jīng)過(guò)標(biāo)準(zhǔn)封裝的任務(wù),,例如: 檢查賬號(hào)余額;開(kāi)新帳戶 等等…。SOA的目標(biāo)是通過(guò)服務(wù)的流程化來(lái)實(shí)現(xiàn)業(yè)務(wù)的靈活性,,所謂流程(Process)是由一系列相互關(guān)聯(lián)的任務(wù)所組成,,實(shí)現(xiàn)一個(gè)具體的業(yè)務(wù)功能。一個(gè)流程可以由一系列服務(wù)來(lái)實(shí)現(xiàn),。

 

點(diǎn)擊查看原圖

SOA治理

服務(wù)就像一堆“元器件”,,這些元器件通過(guò)封裝形成標(biāo)準(zhǔn)服務(wù),他們有相同的接口和語(yǔ)義表達(dá)規(guī)則,。但服務(wù)要組裝成一個(gè)流程和應(yīng)用,,還需要有效的“管理”,包括如何注冊(cè)服務(wù),、如何發(fā)現(xiàn)服務(wù),、如何包裝服務(wù)的安全性和可靠性,這些就是SOA治理,。SOA治理乃是將SOA這一堆元器件,,進(jìn)行有效組裝,形成一個(gè)“產(chǎn)品”的關(guān)鍵,,否則它永遠(yuǎn)是一堆器件,,而無(wú)法形成一個(gè)有機(jī)整體,。

SOA治理的方法和體系,就是區(qū)別于一般組件開(kāi)發(fā)的技術(shù)的重要區(qū)別和特征,。

一個(gè)正確的框架,,是指導(dǎo)我們開(kāi)發(fā)和實(shí)施SOA架構(gòu)的基礎(chǔ)。由IBM提案,,國(guó)際開(kāi)放群組(The Open Group)提出了一個(gè)SOA架構(gòu)的參考模型,,這個(gè)架構(gòu)框架目前是產(chǎn)業(yè)界最權(quán)威和嚴(yán)謹(jǐn)?shù)腟OA架構(gòu)標(biāo)準(zhǔn)。The Open Group是一個(gè)非營(yíng)利標(biāo)準(zhǔn)化組織,,是一個(gè)廠商中立和技術(shù)中立的機(jī)構(gòu),,致力于提出各種技術(shù)框架和理論結(jié)構(gòu),致力于促進(jìn)全球市場(chǎng)的業(yè)務(wù)效率,。The Open Group已有超過(guò)20年的標(biāo)準(zhǔn)制定與推廣歷史,。在1996年,由X/Open與Open Software Foundation合并組成,。The Open Group最有名是作為UNIX商標(biāo)的認(rèn)證機(jī)構(gòu),。在過(guò)去,協(xié)會(huì)最出名的是其出版的Single UNIX Specification,,它擴(kuò)充了POSIX標(biāo)準(zhǔn)而且是UNIX的官方定義,,其成員包括IT用戶、供應(yīng)商以及政府機(jī)構(gòu),。The Open Group在中國(guó)的創(chuàng)始會(huì)員為金蝶集團(tuán),,金蝶集團(tuán)負(fù)責(zé)成立了中國(guó)分會(huì)。TOG在1993年提出的The Open Group Architecture Framework (TOGAF) 架構(gòu)框架,,是一套行之有效的企業(yè)架構(gòu),。歷經(jīng)15年9個(gè)版本發(fā)展,支持開(kāi)放,、標(biāo)準(zhǔn)的SOA參考架構(gòu),,已被80%的福布斯( Forbes)全球排名前50的公司使用。這個(gè)SOA參考模型為:

 

點(diǎn)擊查看原圖

SOA標(biāo)準(zhǔn)模型
根據(jù)這個(gè)模型,,完整的SOA架構(gòu)由五大部分組成,,分別是:基礎(chǔ)設(shè)施服務(wù)、企業(yè)服務(wù)總線,、關(guān)鍵服務(wù)組件,、開(kāi)發(fā)工具、管理工具等,。
SOA基礎(chǔ)實(shí)施是為整個(gè)SOA組件和框架提供一個(gè)可靠的運(yùn)行環(huán)境,,以及服務(wù)組件容器,它的核心組件是應(yīng)用服務(wù)器等基礎(chǔ)軟件支撐設(shè)施,,提供運(yùn)行期完整,、可靠的軟件支撐,。

企業(yè)服務(wù)總線是指由中間件基礎(chǔ)設(shè)施產(chǎn)品技術(shù)實(shí)現(xiàn)的、通過(guò)事件驅(qū)動(dòng)和基于XML消息引擎,,為SOA提供的軟件架構(gòu)的構(gòu)造物,。企業(yè)服務(wù)總線ESB提供可靠消息傳輸、服務(wù)接入,、協(xié)議轉(zhuǎn)換,、數(shù)據(jù)格式轉(zhuǎn)換、基于內(nèi)容的路由等功能,,屏蔽了服務(wù)的物理位置,,協(xié)議和數(shù)據(jù)格式。在SOA基礎(chǔ)實(shí)現(xiàn)的方案上,,應(yīng)用的業(yè)務(wù)功能能夠被發(fā)布,、封裝和提升(Promote)成為業(yè)務(wù)服務(wù)(Business Service);業(yè)務(wù)服務(wù)的序列可以編排成為BPM的流程,,而流程也可以被發(fā)布和提升為復(fù)合服務(wù)(Composited Service),,業(yè)務(wù)服務(wù)還可以被外部的SOA系統(tǒng)再次編排和組合。ESB是實(shí)現(xiàn)SOA治理的重要支撐平臺(tái),,是SOA解決方案的核心,,從某種意義上說(shuō),如果沒(méi)有ESB,,就不能算作嚴(yán)格意義上的SOA。

關(guān)鍵服務(wù)實(shí)現(xiàn),,是SOA在各種業(yè)務(wù)服務(wù)組件的分類,。一般來(lái)說(shuō),一個(gè)企業(yè)級(jí)的SOA架構(gòu)通常包括:交互服務(wù),、流程服務(wù),、信息服務(wù)、伙伴服務(wù),、企業(yè)應(yīng)用服務(wù)和接入服務(wù),。這些服務(wù)可能是一些服務(wù)組件,也可能是企業(yè)應(yīng)用系統(tǒng)(如ERP)所暴露的服務(wù)接口等等,。這些服務(wù)都可以接入ESB,,進(jìn)行集中統(tǒng)一管理。

開(kāi)發(fā)工具和管理工具:提供完善的,、可視化的服務(wù)開(kāi)發(fā)和流程編排工具,,涵蓋服務(wù)的設(shè)計(jì)、開(kāi)發(fā),、配置,、部署,、監(jiān)控、重構(gòu)等完整的SOA項(xiàng)目開(kāi)發(fā)生命周期,。

按照這個(gè)模型,,許多SOA解決方案是只提供部分實(shí)現(xiàn)。這個(gè)行業(yè)中,,許多國(guó)內(nèi)的企業(yè)為了搭上SOA的便車,,經(jīng)常以偏概全,混繞概念,。應(yīng)該說(shuō)真正按照SOA的思想和模型來(lái)構(gòu)建整個(gè)企業(yè)的IT架構(gòu)的案例是非常之少的,。許多國(guó)外廠商的宣傳案例,基本上是停留在部署應(yīng)用服務(wù)器,,開(kāi)發(fā)了部分WebService組件,,可以實(shí)現(xiàn)部分?jǐn)?shù)據(jù)集成,這個(gè)層次而已,,而這些WebService是部署在ESB平臺(tái)之上的,,就已經(jīng)很不錯(cuò)了。實(shí)現(xiàn)了服務(wù)流程重組,,實(shí)現(xiàn)SOA治理的案例就更是很少見(jiàn)到了,。

國(guó)內(nèi)有許多軟件企業(yè)開(kāi)發(fā)的系統(tǒng),宣傳是SOA架構(gòu)的,?;旧嫌袔追N情況,其一,,有些開(kāi)發(fā)組件和開(kāi)發(fā)平臺(tái)廠商,,他們也自稱中間件企業(yè),基本上是提供一個(gè)工作流平臺(tái),,許多還不支持BPEL的業(yè)務(wù)流程管理,,只是傳統(tǒng)的XPDL/WfMC工作流平臺(tái)(Workflow不同于支持服務(wù)流程的Business Process),最常見(jiàn)的案例是OA辦公審批,,或者服務(wù)組件開(kāi)發(fā)工具,,而所謂的ESB產(chǎn)品大部分都是EAI的升級(jí),可以與Webservice進(jìn)行接口而已,,就宣稱這是ESB產(chǎn)品了,,基本的服務(wù)注冊(cè)、服務(wù)編排和安全管理都不具備,。這些解決方案只是提供了許多WebService開(kāi)發(fā)的組件,,而不提供SOA治理的核心架構(gòu),相當(dāng)于造了許多元器件,,但還不能提供整機(jī)產(chǎn)品,。

其二,,許多宣稱SOA架構(gòu)的應(yīng)用軟件,基本上可以說(shuō)是“支持”SOA,,而不能稱為“基于SOA”架構(gòu),。因?yàn)橹С諷OA一般是指可以將其某些功能,封裝為服務(wù)(WebService),,可以在SOA架構(gòu)之中進(jìn)行管理,,這比較容易達(dá)到。而“基于SOA”是指應(yīng)用系統(tǒng)的業(yè)務(wù)功能都是封裝為服務(wù),,通過(guò)ESB進(jìn)行集中管理,,業(yè)務(wù)實(shí)現(xiàn)是通過(guò)BPEL業(yè)務(wù)流程管理進(jìn)行編排,用戶交互是通過(guò)交互服務(wù)(如門戶)進(jìn)行管理,,整個(gè)解決方案可以達(dá)到標(biāo)準(zhǔn)服務(wù)封裝,、服務(wù)復(fù)用、松耦合,、服務(wù)編排與重組,,并且基本符合TOG-SOA的架構(gòu)模型。

按照這個(gè)標(biāo)準(zhǔn),,IT用戶就可以了解到真正的SOA架構(gòu)的框架模型,,就可以識(shí)別是否是企業(yè)所需要的架構(gòu)。

講到這里,,我們已經(jīng)很清楚了,,對(duì)于SOA的理解,有些學(xué)者或者咨詢公司強(qiáng)調(diào)SOA不是一種技術(shù),,也不是軟件,,而是一種思想,一種架構(gòu)風(fēng)格,。我認(rèn)為這也是不完全準(zhǔn)確的,這種觀點(diǎn)認(rèn)為SOA僅僅是思想和方法,,將使得SOA成為一種不可知論,,飄在空中,很難落地,。

 

4.     SOA如何落地

自從1996年Garnter的分析師首次提出SOA的概念,,到今天,已經(jīng)過(guò)去10多年了,,在前幾年這個(gè)概念并沒(méi)有引起多大的注意,,只是到這幾年在技術(shù)上WebService的成熟,以及互聯(lián)網(wǎng)的普及,,SOA作為企業(yè)架構(gòu)的主要技術(shù),,才逐漸占據(jù)了產(chǎn)業(yè)的主流,。

因?yàn)樯虡I(yè)策略的不同,有些企業(yè)提出SOA已經(jīng)過(guò)時(shí),,有些企業(yè)還認(rèn)為SOA還沒(méi)有達(dá)到成熟的階段等等這些論點(diǎn),。從商業(yè)概念炒作周期來(lái)看,我認(rèn)為SOA正當(dāng)喧囂之后的理性期,,是業(yè)界和IT用戶真正拋棄“炒作”,,踏踏實(shí)實(shí)發(fā)揮SOA的商業(yè)價(jià)值的時(shí)候了,SOA需要落地,。

SOA將來(lái)真正推廣到企業(yè)中應(yīng)用,,要落地,就不能離開(kāi)幾個(gè)基本的東西:支撐SOA的基礎(chǔ)中間件平臺(tái),、符合SOA架構(gòu)的應(yīng)用系統(tǒng)(如ERP等),、構(gòu)建SOA的方法論。

 


SOA落地途徑

4.1.    架構(gòu)方法論

方法和工具構(gòu)成了工程技術(shù)域,,要構(gòu)建SOA架構(gòu)的企業(yè)信息系統(tǒng),,確保業(yè)務(wù)和IT的真正匹配,首先必須從方法論入手,。

許多企業(yè)的IT系統(tǒng)“孤島”現(xiàn)象嚴(yán)重,,本質(zhì)上是缺乏足夠有效的整體規(guī)劃或者架構(gòu)規(guī)劃造成的。形象地說(shuō),,構(gòu)建企業(yè)IT大廈如同我們蓋房子是一樣的道理,。我們?cè)S多企業(yè)建設(shè)信息系統(tǒng)時(shí)就采用了蓋鄉(xiāng)村民宅的做法。蓋鄉(xiāng)村民宅不需要嚴(yán)謹(jǐn)?shù)囊?guī)劃,,也沒(méi)有復(fù)雜的地下設(shè)施建設(shè)(如自來(lái)水供水,、排水、供氣,、地下停車場(chǎng)等),,也沒(méi)有需要建設(shè)污水處理、雨水收集等復(fù)雜的配套設(shè)施,。而事實(shí)上,,企業(yè)IT系統(tǒng)建設(shè)應(yīng)該如城市建設(shè),首先需要城市總體規(guī)劃,,然后根據(jù)功能區(qū)規(guī)劃,,設(shè)計(jì)和建設(shè)小區(qū)配套設(shè)施,“三通一平”實(shí)質(zhì)就是構(gòu)建建筑之間的公共基礎(chǔ)設(shè)施,,確保每棟建筑之間不是“孤島”,,然后每棟建筑還需詳細(xì)的設(shè)計(jì)和工程施工。如果要消除信息孤島,實(shí)現(xiàn)IT與業(yè)務(wù)的一致性,,也需要有效的企業(yè)架構(gòu)規(guī)劃和設(shè)計(jì),。

 

點(diǎn)擊查看原圖

為什么需要架構(gòu)規(guī)劃

透過(guò)現(xiàn)象看本質(zhì),SOA代表著一種面向服務(wù)的IT架構(gòu)風(fēng)格,,SOA的技術(shù)本質(zhì)和出發(fā)點(diǎn),,在于IT架構(gòu)。而IT架構(gòu),,是組織的企業(yè)架構(gòu)的重要組成部分,,它和組織的戰(zhàn)略架構(gòu)、業(yè)務(wù)架構(gòu)一起,,形成一個(gè)自上而下,、緊密聯(lián)系、相輔相成的有機(jī)整體,。SOA代表著一種正在蓬勃興起的革命性IT架構(gòu)理念,,和傳統(tǒng)技術(shù)體系區(qū)別的關(guān)鍵特征之一就在于SOA是戰(zhàn)略導(dǎo)向和業(yè)務(wù)驅(qū)動(dòng)的。而國(guó)際和國(guó)內(nèi)的各方面經(jīng)驗(yàn)都告訴我們,,對(duì)于一個(gè)組織而言,,捕獲戰(zhàn)略、梳理業(yè)務(wù)和IT的最有效的措施就是架構(gòu),。

企業(yè)架構(gòu)(Enterprise Architecture,,EA),是從多個(gè)角度對(duì)組織的構(gòu)件層次描述的規(guī)劃藍(lán)圖,,從各個(gè)層面反映組織的愿景,、戰(zhàn)略、業(yè)務(wù),、服務(wù),、人員、技術(shù)和產(chǎn)品及其相互之間的關(guān)系,,輔以其管控和演進(jìn)的規(guī)則,。

一個(gè)企業(yè)架構(gòu)內(nèi)容包括業(yè)務(wù)架構(gòu)(Business Architecture)、應(yīng)用架構(gòu)(Application Architecture),、信息架構(gòu)(Information Architecture),、技術(shù)架構(gòu)(Technology Architecture)等。

真正可以落地的SOA建設(shè),,必須且只能從架構(gòu)出發(fā)。沒(méi)有架構(gòu),,"SOA"將變成一盤無(wú)法真正解決各種運(yùn)營(yíng)問(wèn)題的技術(shù)和產(chǎn)品的大雜燴,。優(yōu)良的架構(gòu)填補(bǔ)了業(yè)務(wù)需求與實(shí)際信息系統(tǒng)以及基礎(chǔ)設(shè)施設(shè)計(jì)之間難以逾越的鴻溝。

在所有的架構(gòu)開(kāi)發(fā)方法(ADM- Architecture Development Methods)之中,開(kāi)放群組TOG的TOGAF是目前最權(quán)威和最有影響力的一種,。The Open Group于1993年開(kāi)始應(yīng)客戶要求制定系統(tǒng)架構(gòu)的標(biāo)準(zhǔn),,在1995年發(fā)表The Open Group Architecture Framework (TOGAF) 架構(gòu)框架。TOGAF的基礎(chǔ)是美國(guó)國(guó)防部的信息管理技術(shù)架構(gòu)(Technical Architecture for Information Management: TAFIM),。TOAGF是一個(gè)架構(gòu)框架,,簡(jiǎn)而言之,TOGAF是一種協(xié)助開(kāi)發(fā),、驗(yàn)收,、運(yùn)行、使用和維護(hù)架構(gòu)的工具,,它是基于一個(gè)迭代(Iterative)的過(guò)程模型,,支持最佳實(shí)踐和一套可重用的現(xiàn)有架構(gòu)資產(chǎn)。它可設(shè)計(jì),、評(píng)估并建立組織的正確架構(gòu),。TOGAF的關(guān)鍵是架構(gòu)開(kāi)發(fā)方法ADM:一個(gè)可靠的,行之有效的方法,,以發(fā)展能夠滿足商務(wù)需求的企業(yè)架構(gòu),。而2008年發(fā)布的TOGAF 9.0是符合SOA架構(gòu)開(kāi)發(fā)的最新版本。TOGAF所提出的“無(wú)邊界信息流(Boundaryless Information Flow)”理念和愿景,,是解決目前企業(yè)信息化孤島問(wèn)題的最有效方式,。

 

點(diǎn)擊查看原圖

TOGAF架構(gòu)內(nèi)容

4.2.    基于SOA的應(yīng)用系統(tǒng)

基于SOA的應(yīng)用系統(tǒng)構(gòu)建方法與傳統(tǒng)軟件架構(gòu)方法有所不同。

首先基于SOA的應(yīng)用系統(tǒng)建模和管理的組件層次是服務(wù):

 

點(diǎn)擊查看原圖

面向服務(wù)的工程

基于服務(wù)的應(yīng)用系統(tǒng)的本質(zhì)特征是松耦合,,以基本業(yè)務(wù)功能(服務(wù)封裝)為系統(tǒng)的基本實(shí)現(xiàn)單元,,然后通過(guò)服務(wù)編排(流程管理)來(lái)“組裝”業(yè)務(wù)應(yīng)用系統(tǒng)。相對(duì)于以往的應(yīng)用系統(tǒng),,是面向技術(shù)組件,,由系統(tǒng)程序?qū)崿F(xiàn)業(yè)務(wù)流程,在復(fù)用,、耦合方面都存在靈活性問(wèn)題,。

 

點(diǎn)擊查看原圖

軟件工程和系統(tǒng)設(shè)計(jì)的演進(jìn)過(guò)程

基于SOA的應(yīng)用系統(tǒng)構(gòu)建過(guò)程是:

 

點(diǎn)擊查看原圖

基于SOA的應(yīng)用構(gòu)建過(guò)程

服務(wù)建模是第一步,也就是服務(wù)識(shí)別和顆粒度確定,。服務(wù)識(shí)別是方法論的第一步,,服務(wù)識(shí)別的主要任務(wù),是確定在一定范圍內(nèi)(通常是企業(yè)范圍,,或若干業(yè)務(wù)場(chǎng)景范圍內(nèi))可能成為服務(wù)的候選者列表,,并確定服務(wù)的顆粒度,以及標(biāo)識(shí)服務(wù)的接口,。服務(wù)建模也就確定了應(yīng)用系統(tǒng)架構(gòu)的耦合程度,。

服務(wù)封裝階段的主要任務(wù)是對(duì)服務(wù)進(jìn)行規(guī)范性的描述,,其中包括輸入/輸出消息等功能性屬性,以及服務(wù)在業(yè)務(wù)層面的諸多屬性,。并決定服務(wù)以何種形式向外提供服務(wù),。服務(wù)可能是新開(kāi)發(fā)的業(yè)務(wù)功能和業(yè)務(wù)對(duì)象的封裝,也可能是遺留系統(tǒng)的服務(wù)封裝,,將遺留系統(tǒng)的軟件資產(chǎn)以服務(wù)的形式進(jìn)行封裝,,在新的架構(gòu)上利用已有的資產(chǎn)。

服務(wù)治理就是將已經(jīng)封裝好的服務(wù)進(jìn)行集中統(tǒng)一有效的管理,。通過(guò)ESB基礎(chǔ)設(shè)施,,提供服務(wù)注冊(cè)、存儲(chǔ),、安全控制和版本管理等,。服務(wù)注冊(cè)階段的主要任務(wù)是將服務(wù)注冊(cè)到服務(wù)庫(kù)。此時(shí)需要決定服務(wù)的命名,、安全,、性能、時(shí)間特性,。

服務(wù)編排就是根據(jù)業(yè)務(wù)流程的需求,,對(duì)服務(wù)進(jìn)行組合和組裝。服務(wù)組裝是以實(shí)現(xiàn)業(yè)務(wù)流程為目的,,通過(guò)對(duì)業(yè)務(wù)服務(wù)的組合和組裝,,實(shí)現(xiàn)更粗粒度的業(yè)務(wù)服務(wù),實(shí)現(xiàn)最終的業(yè)務(wù)需求,。

應(yīng)用交付階段主要任務(wù)是完成業(yè)務(wù)系統(tǒng)服務(wù)化組裝和服務(wù)部署,,實(shí)現(xiàn)業(yè)務(wù)按需交付。

基于SOA的應(yīng)用系統(tǒng)是SOA架構(gòu)的重要組成部分,,也是SOA落地的地基,。

4.3.    支撐SOA的中間件平臺(tái)

SOA方法論和基于SOA的應(yīng)用系統(tǒng)要落地的支撐工具和技術(shù)基礎(chǔ)就是中間件平臺(tái)。這個(gè)在3.3.SOA的架構(gòu)框架(Framework)之中已經(jīng)闡述清楚了,。

根據(jù)TOG-SOA模型,,完整的SOA架構(gòu)五大部分中,基礎(chǔ)設(shè)施服務(wù),、企業(yè)服務(wù)總線,、開(kāi)發(fā)工具、管理工具等,,都是中間件的基礎(chǔ)平臺(tái),。

交付服務(wù)之中的門戶,也是需要支持JSR168和JSR286標(biāo)準(zhǔn)的Portlet容器和個(gè)性化交互以及終端適配的支撐平臺(tái),。

業(yè)務(wù)流程管理需要支持BPEL規(guī)范的流程引擎和流程建模的工具,,這個(gè)中間件平臺(tái)用來(lái)支持服務(wù)的組合和服務(wù)流程編排,,以滿足業(yè)務(wù)重組的需求,來(lái)實(shí)現(xiàn)業(yè)務(wù)的靈活性,。

SOA要落地的最后支撐平臺(tái)就是滿足SOA規(guī)范的中間件技術(shù)。

 

5.     金蝶Ready SOA解決方案

金蝶作為全球領(lǐng)先的SOA解決方案供應(yīng)商,,一直以來(lái)堅(jiān)持腳踏實(shí)地,,自主創(chuàng)新,與北京大學(xué)等高校合作,,承擔(dān)振興國(guó)家基礎(chǔ)軟件的責(zé)任和使命,,將國(guó)際領(lǐng)先的技術(shù)與方法,結(jié)合中國(guó)企業(yè)的實(shí)際需求,,探索國(guó)內(nèi)信息化的最佳實(shí)踐,,提供SOA的完整解決方案。通過(guò)多年的努力,,金蝶成為中國(guó)唯一入選Gartner全球有能力提供SOA服務(wù)的十九家軟件廠商之一,。

金蝶讓SOA落地的解決方案品牌為”readySOA”,意為可以落地、可以實(shí)施的SOA,。

金蝶readySOA的核心內(nèi)涵包括三個(gè)方面:

  • 結(jié)合TOGAF而形成的SOA實(shí)施方法論,;
  • 擁有中國(guó)唯一全球第四通過(guò)Java EE 5.0認(rèn)證的SOA基礎(chǔ)設(shè)施,中國(guó)唯一完整實(shí)現(xiàn)TOG-SOA標(biāo)準(zhǔn)模型的金蝶Apusic中間件平臺(tái),;
  • 國(guó)內(nèi)第一套基于SOA實(shí)現(xiàn)的企業(yè)應(yīng)用軟件金蝶EAS,。

我們有這幾方面的綜合經(jīng)驗(yàn),所有金蝶ERP產(chǎn)品都是通過(guò)SOA架構(gòu)去優(yōu)化的,,實(shí)現(xiàn)了標(biāo)準(zhǔn)的服務(wù)封裝,,通過(guò)金蝶中間件SOA的完整平臺(tái)來(lái)支撐,并可以通過(guò)BPEL流程來(lái)進(jìn)行編排和重組,,而TOGAF是SOA架構(gòu)最權(quán)威的方法論體系,,可以指導(dǎo)企業(yè)如何導(dǎo)入、部署和運(yùn)營(yíng)SOA架構(gòu),。

5.1.    金蝶readySOA實(shí)施方法

金蝶readySOA實(shí)施方法包括結(jié)合TOGAF形成的SOA實(shí)施方法,、SOA架構(gòu)成熟度模型等。

TOGAF架構(gòu)開(kāi)發(fā)方法ADM提供了可靈活利用的組織企業(yè)架構(gòu)的開(kāi)發(fā)和治理的過(guò)程,。一個(gè)成功的SOA落地項(xiàng)目的建設(shè)并非一蹴而就,,而是分階段逐步實(shí)現(xiàn)的,其生命周期過(guò)程主要可以分為初步階段,、架構(gòu)階段,、實(shí)施階段、變更管理階段四大環(huán)節(jié)完成,。通常要從組織的某個(gè)獨(dú)立的業(yè)務(wù)單元開(kāi)始,,之后再由小及大,,逐漸在跨組織范圍的整體業(yè)務(wù)中擴(kuò)散,逐步完善整個(gè)組織的SOA 平臺(tái),,最終實(shí)現(xiàn)隨需應(yīng)變的企業(yè)IT架構(gòu),。針對(duì)SOA項(xiàng)目的指導(dǎo),TOGAF定義了其架構(gòu)開(kāi)發(fā)方法ADM各階段和SOA項(xiàng)目全生命周期的各階段之間的映射關(guān)系,,形成了具有良好操作性的架構(gòu)開(kāi)發(fā)方法體系,。

 

點(diǎn)擊查看原圖

    基于TOGAF的SOA實(shí)施方法論更詳細(xì)的金蝶中間件readySOA實(shí)施方法論參加金蝶發(fā)布相關(guān)白皮書和技術(shù)資料出版物。

5.2.    金蝶readySOA中間件平臺(tái)

金蝶中間件按照TOG-SOA的架構(gòu)模型,,開(kāi)發(fā)了一套完整實(shí)現(xiàn)其模型的中間件平臺(tái)產(chǎn)品系列:

 

點(diǎn)擊查看原圖

金蝶Apusic中間件SOA完整實(shí)現(xiàn)產(chǎn)品系列

金蝶Apusic應(yīng)用服務(wù)器(AAS)為企業(yè)應(yīng)用提供穩(wěn)定,、高效、安全的開(kāi)發(fā)平臺(tái)與運(yùn)行引擎,,是所有組件和服務(wù)的容器與計(jì)算環(huán)境,。

金蝶Apusic消息中間件(AMQ)提供消息傳輸服務(wù)的基礎(chǔ)系統(tǒng)軟件,保障數(shù)據(jù)在復(fù)雜的網(wǎng)絡(luò)中高效,、穩(wěn)定,、安全、可靠的傳輸,,并確保傳輸?shù)臄?shù)據(jù)不錯(cuò),、不重、不漏,、不丟,,是實(shí)現(xiàn)SOA分布式計(jì)算的集成通信平臺(tái)。

金蝶Apusic 企業(yè)服務(wù)總線(AESB)以面向服務(wù)的方式,,實(shí)現(xiàn)異構(gòu),、分布式系統(tǒng)之間集成共享、互聯(lián)互通的基礎(chǔ)軟件平臺(tái),,是SOA治理(服務(wù)注冊(cè),、服務(wù)存儲(chǔ)、服務(wù)路由,、安全控制和版本管理)的基礎(chǔ)設(shè)施,。

金蝶Apusic業(yè)務(wù)流程管理(ABPM)是一款面向業(yè)務(wù)的、具有高度擴(kuò)展性和強(qiáng)大整合能力的流程中間件,,支持BPEL協(xié)議,,完整并有力支撐了業(yè)務(wù)流程管理的全生命周期,實(shí)現(xiàn)服務(wù)的組合和流程編排,。

金蝶Apusic數(shù)據(jù)交換和管理平臺(tái)AEI(Apusic Exchange & Integrator),,能夠針對(duì)分布式的異構(gòu)數(shù)據(jù)源,對(duì)數(shù)據(jù)進(jìn)行分析,、采集,、轉(zhuǎn)換,、清洗、影射,、持久等操作,,提供分布式數(shù)據(jù)源之間數(shù)據(jù)集成和交換的解決方案,實(shí)現(xiàn)SOA的信息服務(wù),。

金蝶Apusic門戶平臺(tái)(APS-Apusic Portal Server)使組織的應(yīng)用,、人員、信息,、流程有機(jī)聚合,使用戶能夠通過(guò)單一渠道訪問(wèn)所需的個(gè)性化信息,,它支持標(biāo)準(zhǔn)的JSR Portlet的交互和個(gè)性化編排,。

金蝶Apusic OperaMasks開(kāi)發(fā)平臺(tái),是構(gòu)建SOA服務(wù)和集成化的開(kāi)發(fā)平臺(tái),。AOM AppFrame是開(kāi)放高效的基礎(chǔ)應(yīng)用運(yùn)行平臺(tái),,為企業(yè)應(yīng)用開(kāi)發(fā)提供構(gòu)件化的編程模型與運(yùn)行期支撐;AOM Studio是全開(kāi)發(fā)生命周期支持的集成開(kāi)發(fā)環(huán)境,,為企業(yè)應(yīng)用開(kāi)發(fā)提供從代碼開(kāi)發(fā),、展現(xiàn)設(shè)計(jì),到配置管理,、協(xié)同開(kāi)發(fā)的一站式支持,;而 AOM BizModeler以直觀快速的圖形化方式地對(duì)業(yè)務(wù)邏輯進(jìn)行分析建模、服務(wù)封裝,、流程編排,、部署發(fā)布。

金蝶Apusic Universal Manager是金蝶中間件2.0產(chǎn)品的統(tǒng)一管控平臺(tái),,依托于MaaS理念,,基于瀏覽器的、完全可視化的,、擁有插件體系可擴(kuò)展的管控平臺(tái),。

金蝶中間件Ready SOA支撐平臺(tái)產(chǎn)品完全按照TOG-SOA參考架構(gòu)進(jìn)行設(shè)計(jì),傳承了金蝶十余年從事大規(guī)模關(guān)鍵性企業(yè)級(jí)應(yīng)用開(kāi)發(fā)以及核心基礎(chǔ)設(shè)施建設(shè)之豐富經(jīng)驗(yàn),。在SOA項(xiàng)目的全生命周期的建設(shè)過(guò)程中,,金蝶Ready SOA支撐平臺(tái),能夠有效地簡(jiǎn)化新項(xiàng)目開(kāi)發(fā)和已有項(xiàng)目資產(chǎn)集成的過(guò)程,,提升效率,,降低運(yùn)維成本。對(duì)期望通過(guò)建設(shè)SOA來(lái)改善其業(yè)務(wù)和IT基礎(chǔ)設(shè)施的靈活性,,提升業(yè)務(wù)敏捷性的組織而言,,金蝶Ready SOA支撐平臺(tái)是最佳選擇,。

6.     結(jié)束語(yǔ)

事實(shí)上,SOA這個(gè)話題內(nèi)容是如此豐富,,要闡述清楚SOA各方面的內(nèi)容,,哪怕寫成一套叢書,也是有許多議題無(wú)法講述清楚的,。SOA引起業(yè)界的廣泛關(guān)注,,最近金蝶中間件等企業(yè)參與支持的中國(guó)SOA標(biāo)準(zhǔn)工作組正式啟動(dòng),可以預(yù)期SOA將在中國(guó)得到更大的普及,,讓更多的企業(yè)能否利用SOA的強(qiáng)大優(yōu)勢(shì),,來(lái)增強(qiáng)IT競(jìng)爭(zhēng)力。

SOA不是過(guò)時(shí)了,,也不是空中樓閣,,它需要落地,期望更多的務(wù)實(shí)的中國(guó)企業(yè)和業(yè)界人士,,更多做些腳踏實(shí)地的研發(fā),,共同為SOA在中國(guó)的落地生根而努力。



查閱更多相關(guān)主題的帖子: 中間件 SOA ESB

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多