SOA將在未來三到五年內(nèi)給軟件和網(wǎng)絡(luò)帶來革命性的變化。
幾周前參加了一個網(wǎng)絡(luò)研討會,與會的很多業(yè)界名流都在討論部署未來戰(zhàn)略和預(yù)算的新的技術(shù)發(fā)展趨勢??磥斫衲甑难杏懼攸c就是SOA,按照這些權(quán)威人士的說法,SOA將在未來三到五年內(nèi)給軟件和網(wǎng)絡(luò)帶來革命性的變化。
這些人士或者忽略了一點兒小小不言的懷疑論調(diào):我們曾有多少次說過某項技術(shù)具有"革命性"了?這種場合我們是不是見得太多了?不過這一次,我個人以為至少我們的大方向還是正確的。
先說一點背景:SOA可以說是解決軟件系統(tǒng)構(gòu)件化過程中長期存在的復(fù)雜度和相關(guān)度問題的最新方法。今天的SOA建立在Web服務(wù)的基礎(chǔ)之上,主要以SOAP/XML接口和Web服務(wù)描述語言分發(fā)。和對象以及軟件構(gòu)件相同,"服務(wù)"是在分布式網(wǎng)絡(luò)上構(gòu)建復(fù)雜系統(tǒng)的最基本的建筑材料。
簡而言之,SOA就是對等(P2P)計算的真正的商業(yè)化??偠灾琒OA提供了這樣一種框架:一個系統(tǒng)上的軟件可以安全而且可靠地提出請求并獲得其他系統(tǒng)上的計算資源,而不再需要一臺中央服務(wù)器來管理和控制整個端到端的網(wǎng)絡(luò)。
我們可以做一個更清晰的類比:即回憶一下網(wǎng)絡(luò)架構(gòu)從SNA到IP的演化過程。在SNA環(huán)境下,網(wǎng)絡(luò)的架構(gòu)基本上是"主/從"式的,即由一個網(wǎng)關(guān)控制著遠(yuǎn)程終端和主機(jī)之間的聯(lián)系,所有的控制都在主機(jī)一端。而在IP環(huán)境下,則由分布式的路由器網(wǎng)絡(luò)提供連接,控制不再是集中的了。
然而,軟件架構(gòu)始終未能與IP的演進(jìn)步伐保持一致。在所謂的客戶機(jī)/服務(wù)器計算環(huán)境中,基本的架構(gòu)依然是主/從式的:應(yīng)用服務(wù)器控制著與遠(yuǎn)程客戶機(jī)的通信。
在過去的幾年中,我們已逐漸地將客戶機(jī)/服務(wù)器模式推向了邊緣。客戶機(jī)與服務(wù)器之間的各種通信協(xié)議越來越多地基于Web而不再是專有協(xié)議了,因此應(yīng)用之間的通信也成了多路徑的而不是單路徑的了。
而SOA則從根本上突破了客戶機(jī)/服務(wù)器模式。現(xiàn)在,服務(wù)器與客戶機(jī)之間的主/從通信方式已經(jīng)轉(zhuǎn)變成了分布式的P2P方式,與IP網(wǎng)絡(luò)中路由器之間的通信方式相似。
于是,像IBM、Oracle、SAP和微軟等軟件與系統(tǒng)廠商就很自然地對SOA的興起和部署給予了密切關(guān)注。當(dāng)然,對SOA給予關(guān)注的絕不僅僅只有他們。
SOA對于電信網(wǎng)絡(luò)的影響也是十分巨大的。任何一位網(wǎng)絡(luò)管理人員都很清楚,P2P通信與客戶機(jī)/服務(wù)器應(yīng)用有著非常顯著的不同。SOA系統(tǒng)中的通信流量越來越多地發(fā)生在任意的端到端之間,而客戶機(jī)/服務(wù)器應(yīng)用的流量則主要是星型發(fā)散的。因此,像MPLS這樣可提供安全、可靠的端到端通信架構(gòu)的好處就日益顯著了。
有趣的是,這又是一個"先發(fā)后至"的例子。因為有一個應(yīng)用,其流量模式一直都是端到端的。是什么應(yīng)用?就是語音通信。越向前走,我們就越會發(fā)現(xiàn),數(shù)據(jù)業(yè)務(wù)與昔日的話音業(yè)務(wù)有很多的相似之處。