云計算越來越受到企業(yè)的關(guān)注,并且嘗試部署云計算的企業(yè)也急劇上升,云計算已經(jīng)成為最炙手可熱的新興技術(shù)。而大家對于SOA的關(guān)注程度不再像過去那么強烈。事實上,有許多東西,云計算和SOA是可以相互借鑒和學(xué)習(xí)的。
云計算的幾個值得SOA借鑒的優(yōu)點:
1.服務(wù)設(shè)計
一些通過云部署服務(wù)的供應(yīng)商比如亞馬遜、TheWebService、Force.com等等,在服務(wù)設(shè)計方面做的相當(dāng)好。你會情不自禁地被他們提供的服務(wù)所吸引,因為精心的設(shè)計,再加上確實能夠滿足你的需要讓你無法抗拒。許多SOA項目要么太粗糙,要么就過于繁瑣,一句話概括就是沒有很好的進行服務(wù)設(shè)計。
2.服務(wù)擴展性
云計算服務(wù)的設(shè)計宗旨就是能夠在需要的任何時候都能進行擴展,云服務(wù)用戶確實能夠做到這一點因為他們能夠在任何時候按需定制所需的服務(wù)。而在SOA中擴展服務(wù)通常是一個痛苦和昂貴的過程。
SOA值得云計算借鑒的幾個地方:
1.服務(wù)治理
就目前而言,云計算技術(shù)幾乎沒有任何治理的概念,因此,現(xiàn)在幾乎沒有任何云計算控制和執(zhí)行策略。因此,許多企業(yè)選擇繼續(xù)觀望的態(tài)度,而不急于采用云計算技術(shù)。反觀SOA,它的治理技術(shù)已經(jīng)相當(dāng)成熟了。雖然,SOA治理的實施并不總是效果非常好,不過它已經(jīng)成為了SOA生命周期的一個基本組成部分。
2.架構(gòu)驅(qū)動
如果你SOA部署方法得當(dāng),那么你肯定是按照從架構(gòu)再到技術(shù)這種驅(qū)動方法。而在云計算領(lǐng)域,資源需求才是真正的起點。云計算同樣需要一個深思熟慮的架構(gòu),實際上,架構(gòu)對于云計算更加重要,因為用戶需要將架構(gòu)擴展到防火墻之外。
云計算和SOA的交叉點在哪里呢?
雖然你的確能無需部署SOA就可以充分利用云,不過云計算的真正價值在于它確定存在于防火墻之外位于其它的數(shù)據(jù)中心里的服務(wù)、數(shù)據(jù)和流程的能力。那些企圖想要往云中投擲東西但卻沒有任何架構(gòu)遠見的人會發(fā)現(xiàn),云計算將不會帶來太多的價值。事實上,當(dāng)考慮到遷移帶來的風(fēng)險和成本時,可能會使你非常吃驚。
事實上,你可以將云計算看作是SOA向云交付資源的一種擴展,比如存儲即服務(wù)、數(shù)據(jù)即服務(wù)、平臺即服務(wù)。訣竅在于確定哪些服務(wù)、信息和過程是放在云中的最佳候選人,以及哪些云服務(wù)應(yīng)該在現(xiàn)有或新出現(xiàn)的SOA中被抽象。
所以,你可以將云作為額外運行(簡單地說就是放置)應(yīng)用、過程的平臺。其優(yōu)點是你不需要在數(shù)據(jù)中心中布置一臺安裝了豐富軟件的服務(wù)器,并雇用一些專業(yè)人士對它進行維護。
雖然企業(yè)IT對于云計算的態(tài)度不是非常放心,這也是可以理解的。但是,我認為一旦我們允許云獲得更大的活動空間,許多云計算資源實際上能夠比預(yù)置型資源和設(shè)施提供更好的服務(wù),其中包括節(jié)約成本、提高效率和訪問成千上萬的動態(tài)Web發(fā)布資源。
人們對于云計算的興趣也將大大推動人們對于SOA的興趣,它不僅僅是作為一種機制能夠帶來更多的重用性和靈活性,而且還能夠讓用戶找出哪些資源應(yīng)該駐留在本地,哪些資源應(yīng)該放在云中。
好的SOA會導(dǎo)致一個好的云計算策略,進而會降低成本,增強企業(yè)計算的靈活性。