當今,無論你走到哪里,都會看到一些關于SOA的東西,以及關于用“適當”的方式執行它的爭辯。我認為這一點也不奇怪,因為伴隨著每一個IT行業相關的新趨勢的出現,都會有爭辯,并且賣主會盡力說服顧客相信,他們的技術才是適當的技術——或者他們的產品才是適當的產品——能夠讓顧客最大限度地利用一項新發明。當賣主為了迎合消費者對于信息技術一個新趨勢的興趣,試圖重新配制他們現有的產品組件時,搶奪開始了。但是很不幸,這種行為通常會引起許多混亂局面,因為賣主的諾言一般是不會實現??赡?,面向服務架構適當的技術方案,也不像他們說的那樣好。
為了對此建立正確的觀點,重要的是應該注意到,像定義所說,SOA是分布式的。一項服務的目的就是,通過遠程線路跟另一項服務相通,以共享數據為特色。而其整體的目的是,改變信息技術的途徑,由原來的制定輻射中心的小部分應用軟件,到制定另一系列的應用軟件,它可以通過集合共享的并且可以再度利用的功能性,即各種服務,開發和匯集越來越多的應用資產。
一個分布式SOA的基礎結構,代表著配制和吸收可共享和再度利用的服務最簡易的方法,促進對服務的應用(既經濟又技術),提高部署的靈活性、適應性和持久性(例如,個別的服務比整個應用軟件更容易被鑒定和更新)。
不幸的是,到達SOA基礎結構的途徑被集中化,并不斷被開發和提議。對于賣主來說,說服購買技術的群眾相信提供給他們的技術已經是跟SOA相適應的,以前是,以后也是,設計這項技術的初衷就是加快顧客走向SOA的步伐,將是一個更艱難的過程。賣主也不管它最初是以JEE應用服務器還是EAI系統的形式設計出來的。
換言之,對分布式SOA持對立態度的賣主通常這樣做,因為途徑集中化是他們已經擁有的軟件基礎構架的特征。一個更新了的企業應用集成或一個基于JEE的堆棧,或其他任何在通過中控點時需要發送請求的方案,都不能被看成是真正的分布式,因為它們所有通向服務路徑的前提都是必須首先進行集中處理。將通往SOA途徑集中增加了成本,限制了再利用,降低了靈活性,且暗中引入了一個昂貴的瓶頸。最壞的情形是,它將在第一時間否定到達SOA的理由。如果SOA的基礎構架的靈活性沒有滿足他們的要求,人們一定會感到很失望。
只要上網查,就可以了解分布式應用軟件滿足其用戶需求的成功案例。網絡是目前最大的分布式應用程序,由特征決定其分布模式,SOA是同樣的道理。當你在瀏覽器上點擊一個鏈接到某一個具體網址時,你的需求并不需要經由某個配制在一個服務器或者網絡中心的中控系統,而是直接從你的瀏覽器傳達到網絡服務器,這種模式在企業的SOA運作得也非常好。網絡終端能夠以個體為單位進行升級,而不會打斷客戶機程序的運轉,影響其他站點,或者導致中央集線路或服務器也需要更新,那是因為需求不需要首先通過一個中央集線路或者服務器。一個好的SOA的基礎構架同樣支持這些性能。
幸運的是,一個基礎構架方案包含了SOA分布式的特征。到達SOA基礎構架分布式的途徑使用很精巧的終端,有可提供服務的應用軟件,并使得這些軟件能夠直接跟其他服務相通。企業性質的服務,比如具有高度的實用性或者安全性的服務,也可以由終端系統提供,以確?,F有的承擔著重大使命的應用軟件有所依靠。分布式SOA的基礎構架是關于創造信息技術環境的,這個信息環境是一個交流平臺,標準高,靈活性強,所以它可以對不斷更新的技術和商業前景做出更有效的反應。因此,一個分布式的SOA工作環境能夠更好地支持一個以SOA為基礎的應用軟件的技術和經濟需求。最后,到達SOA基礎構架的分布式途徑允許你以自己的速度進行,每次配制一個或兩個服務,可以根據需要隨時增加服務,注冊/存儲庫,管理等功能,而不是事先就必須完全添加好。
我并不是說EAI系統,集成線路和輻射裝應用軟件,或者是JEE服務器到達SOA的基礎構架的中央式途徑是不好的或者是錯誤的,很多時候,現有的社團應用軟件功能依賴于一個或多個這種模式。我所說的是,一個好的SOA的基礎構架不應該讓你的構思選擇權被這些元件中任何一個都能夠做到的事情所制約——事實上,一個好的SOA的基礎構架在它的可再度利用的服務資產中已經包含了這些元件。
分布式SOA的好處與航空行業有相似之處,后者用成本低廉的操作系統挑戰著已建造的航空器。已制定操作系統的方法是以一個成本很高的樞紐和輻射模式為基礎,通過少數幾個專業的旅游中心匯集乘客。操作大型飛機需要更多成本,從分支機場飛往樞紐機場,乘客在那里準備繼續他們的旅程到達最終目的地。用這種模式,飛機需要更多成本,機場設備的費用也因此增加。當低成本航線——一個分布更廣的,點對點的運作模式(較小的飛機直接飛往較小的機場)——被制定出來之后,被傳統的樞紐模式所束縛的航線便在資金方面處于劣勢。
SOA的消費者不需要再花錢買老式的昂貴的軟件堆棧了。消費者需要專門為解決SOA趨勢——為了改進將現有的和新的信息技術功能性資產提供到應用軟件里的方法——到來造成的問題而設計的更好的軟件。SOA設計需要一個好的方式來創造和配制可再利用性服務,無論何時何地只要有需要就能夠很簡易并且直接地拿出來用的方式。消費者需要成本低的選項,可以讓他們從小規模開始,隨需要逐漸增加對它的采用,運用點對點通訊方案可以避免使用昂貴的新服務器和集成線路,根據需求增加服務的質量和其他性能??偠灾?,他們需要SOA的基礎構架,它能夠真正符合一個SOA固有的分布式特征。
原文:http://searchwebservices.techtarget.com/tip/0,289483,sid26_gci1237827,00.html
(責任編輯:銘銘 mingming_ky#126.com TEL:(010)-68476636)