新四季網

SOA中間件:前景光明卻又充滿了荊棘

2024-09-06 12:47:10

    一定要選擇SOA的中間件?

  中間件是什麼?可以說中間件是一類軟體產品,又可以進一步把它劃分為應用伺服器、消息中間件、交易中間件、門戶伺服器和工作流系統等多個類別,不同的中間件解決不同的問題。SOA是什麼?SOA是一種軟體系統提供功能的架構式樣。組成這樣的一個架構,需要有服務的請求者、服務的提供者、以及服務的描述者,其中,服務的請求者、提供者要遵循相同的規範和標準,才能實現基於網際網路的調用,描述者則要把這些服務描述清楚,使請求者能夠了解服務是做什麼的、到那裡去找,如何訪問一個服務,這是一個支持松偶合的技術架構。要說一個是產品,一個是架構,兩者結合在一起,即所謂符合或者支持SOA架構的中間件產品,或者乾脆稱自己是SOA架構的中間件產品,這意味著什麼?對於用戶而言,在採購中間件產品的時候,是否一定要購買這樣產品呢?

  先來看所謂SOA架構的中間件產品的含義,為此,我求教了相關中間件廠商,含義無外乎兩個:一個是說採用這種中間件產品可以很好的構建SOA的應用:再有就是採用這種中間件產品開發出來的應用,將很容易被整合進SOA架構。兩者的含義都差不多,就是其應用很容易實現SOA。業內人士指出,所謂SOA架構中間件並不十分的準確,因為這裡中間件的提法太籠統了。前面說過,中間件可以分為7大類,其中有些產品,如應用伺服器、門戶中間件、一些新的工作流系統等,與網際網路關係密切,本身就支持Web服務的封裝,基於它們開發的應用的功能很容易就能封裝成Web服務,支持SOA;但是對於消息中間件、交易中間件等,來談論SOA,其意義就不大了。

  總體看來,所謂SOA架構的中間件,無非就是要表明,廠商提供的中間件產品對於SOA有很好的考慮,而SOA還是針對應用而言。 SOA概念的提出是為了解決動態的B2B應用整合的問題。這裡不妨看一個理論中關於物流行業的例子。物流涉及倉儲、運輸、車輛等幾個環節,如果這些環節相應的信息系統所提供的功能服務都能夠以Web服務的方式提交出來,那麼相互的調用就會非常容易,很容易實現動態的B2B整合。哪怕你沒有自己的倉庫、車輛,同樣可以利用這些服務,構建全新的物流商業模式,提供靈活的商業服務,成為一個第三方、第四方物流企業。對於企業而言也是這樣,我們看一些成功的企業,如Cisco,對於上下遊的合作夥伴,具有很高的信息化的要求。以分銷代理為例,Cisco已經不接受傳統的下單方式,其總代理必須通過電子商務的方式定購產品。Cisco所採用的系統是SAP的,這就要求上下遊的合作夥伴也必須採用SAP的系統,否則系統就無法對接,這就是現實的情況。

  如果各家ERP廠商能夠按照SOA的觀念,遵循標準化的規範,把服務以標準的方式提交、展現出來,那麼,這樣的限制就不復存在,SOA的價值在於跨越了不同應用系統、不同技術的整合,這種整合改變現有的商業模型。

  SOA描繪了一個無比美妙的未來,也是擁有一定的現實基礎,SOA與現今流行的Web服務緊密聯繫在一起。Web服務是一項技術,其規範包括WSDL、SOAP、UDDI。Web服務由WSDL描述,通過UDDI發現,並通過SOAP去訪問。Web服務提供了技術,而SOA則提供了應用這種技術的框架,是一個非常好的思路,因此得到了軟體業界普遍的認可。

  中間件對於Web應用具有簡化和幫助其相互連接、相互訪問的作用。從理論上講,基於Web服務的中間件將會給應用軟體的開發、部署、應用方式帶來革命性變化,因為Web服務的出現,使各應用組件之間能夠以松偶合和標準的方式連接,突破了傳統的基於某廠商特定技術、某一種特定技術的方式。目前,幾乎所有新的中間件類型、新的中間件產品都支持Web服務,可以基於它們實現SOA架構的應用。正因為如此,人們將中間件視為實現SOA架構的理想平臺。憑藉這種天然的聯繫,中間件搭車SOA也是一個增加曝光率的明智擇。從技術視野上來看,如果中間件產品沒有考慮SOA是短視的,在技術跟隨上顯得行動緩慢。

  未來前景廣闊 現實問題重重

  按照Gartner等權威機構的預測,作為一種面向未來的構想,SOA到成為現實的主流架構顯然還有很長路要走,甚至可能要用5~10年的時間。對於現實的意義而言,SOA有什麼價值嗎?

  對於廠商而言,應該密切注意技術的發展潮流,加緊技術的跟蹤與研發,待時機成熟,隨時推出產品和方案。對於用戶而言,如果你具有很強的技術背景和開發實力,也可以嘗試著進行一些概念的驗證和實踐,以期進一步熟悉和了解SOA的架構。相對而言,在企業的內部驗證SOA容易一些,你可以把一些應用封裝為Web服務,自己作為這些服務的提供者和使用者,在企業內部使用這些服務創造新的價值,從這個意義來說,這個時候的用戶,已經成為技術的實踐者。。

  如果企業打算向外部推廣一些服務,和它的供貨商、分銷商、代理商、客戶等一起來構建SOA架構的應用,就還有很長的路要走。這裡有一個實際的例子。我們知道商業銀行現在向客戶提供很多代繳固話費、手機費、水費、電費、煤氣費等服務,一個省級分行要和幾十個需要收費的單位互聯,實現應用的相互訪問。從純技術的角度看,無疑是基於Web服務的SOA架構應用的非常好的用武之地。但現實是,沒有人這麼做。因為需要改造自己的業務系統,牽涉很多人員和投入。此外,也要安全的問題,效率的問題等,目前還沒於成熟的解決辦法。

  早有國外專家指出,SOA作為一個具有發展前景的應用系統架構,尚存在許多有待改進的地方,例如在可靠性、安全性、編制(Orchestration)、遺留系統(Legacy support)支持和語義(Semantics)方面均還存在嚴重不足。以可靠性為例,在不可否認性(non-repudiation)、消息一定會被傳送且僅傳送一次(once-and-only-once delivery)以及事務撤回(rollback)等問題上, SOA還沒有做好準備。現有的基於交易中間件、消息中間件的解決方案,較好地滿足了應用系統在性能、服務質量和安全性等幾個方面的需求。但在SOA環境中,其應用組件之間是一種鬆耦合的關係,要讓一個應用軟體的組件,很容易去跟屬於不同應用的軟體組件進行對話,如何確保這些迥然不同,但又相互連接的系統的效率、可靠性、可控性和安全性,就複雜得多了,是SOA還沒有最終解決好的問題。這些都影響了SOA的實際實施和推廣。

  未來的餅 怎麼可以解決今天的溫飽

  用領先的IT技術來構建企業的核心競爭能力,這還是目前大多數用戶的期待。SOA作為一種面向未來的架構,應該得到更多的關注。但是SOA並不適用於解決所有的問題,也並不是所有的產品都需要支持SOA。對此,我也就這個問題請教了國內的中間件廠商。

  前面說過,SOA的概念主要來自應用的動態B2B整合。從廠商的反饋來看,目前國內用戶整體上還沒有到規模化的推廣、應用基於Web服務和SOA架構發B2B應用的階段,即使是企業內部的應用整合SOA適用的情況也不多,僅有的案例其實際意義也非常有限。企業是否要部署和應用SOA,根本上還是要看業務上的需要和要解決的業務問題以及要通過IT系統達到的目的。在技術的選擇上,無論是在SOA出現之前、現在、還是SOA之後,最重要的是要看什麼技術和產品能夠最有效、最可靠、最方便地解決用戶的現實業務問題和相關的技術問題。能夠把握現在,才能適用未來。從國內的應用整合實踐來看,部門內部或跨部門的數據的整合、一般的應用系統的整合還是最主流的需求。針對這些需求,有許多成熟的方法和工具。目前國內很多省市都在推動和建設的企業信用系統,可以很好地驗證這一觀點。建設企業信用系統是要把散布在質檢、工商、國稅、地稅、銀行等部門的企業信用數據整合起來,進行分析、處理和深加工,最終提供一系列的信用產品並為政府部門的管理和決策服務。因此,需要建一個大的企業數據中心,需要把散布在不同部門中的數據匯集起來。其關鍵的問題就是數據的同步問題,需要不斷匯總、更新數據,而不是簡單的、同步的數據查詢。這不是SOA最適合的工作。

  金融方面也有類似的例子。例如某銀行在實現全國集中數據處理後,需要把在全國中心產生的交易流水數據按需要下傳給省行和地市行使用,以實現交易的事後監督。要傳的數據量比較大,從總行到省分行可以達到幾個GB的規模。對這個案例而言,如何實現高效、可靠的網上傳輸是最關鍵的問題,是整個的應用整合方案的核心。曾經使用過FTP在網上進行傳輸,由於缺乏可靠性傳輸和斷點續傳等保證,實際效果不好。後來採用了基於消息中間件軟體實現的海量文件傳輸整合方案,就能夠很好的解決有關問題。這同樣不適合SOA。從目前來看,國內很難找到有實際意義和一定規模的SOA應用部署。。因此,無論是國內廠商還是國外廠商,宣傳的大都還是概念、技術產品和應用方案,鮮有實際的案例,和實際案例的詳細的解析。SOA的現實意義大打折扣。

  毋庸諱言,與國外發達國家的企業相比,國內在創新技術的研發和投入上仍有教大的差距,但這並不等於說,國內企業在技術上就一無所長。實際上,國內企業在技術的實踐上還是有很多的經驗和心得,在這一點上,國內外並沒有什麼差距。理論的研究再好,也是要與實際的商業進行結合才會煥發出生命力。對於SOA也是如此,沒有人敢保證SOA將來肯定成功。今天所能說是,面向未來發展,SOA為應用的動態整合提供了一個非常好的思路,一個解決問題的方法。然而目前SOA相關技術和應用還處於探索和發展之中,對此一定要有一個清醒的認識。

  在IT業內有一個口號:以用戶為中心,也就是以用戶的需求為中心。SOA作為一種技術上的視野,應該讓用戶有更多的了解,也可以讓用戶也參與進來,我們看到IBM在很多情況下就是這樣做的,這也是一種負責任的態度。在軟體方面,IBM的策略是不做應用軟體,只做基礎軟體,通過幫助合作夥伴,為最終用戶提供服務。但是我們也看到另外一種情況,SOA作為未來的發展方向,其本身非常複雜,而國內用戶受應用水平的限制,在技術視野上本不廣闊,讓他們清楚地分辯未來與現實本就不是一件容易事情,很容易受到輿論的誤導。有些廠商,把SOA作為一種技術標籤加以推廣,其目的只有一個,抬升自己企業的品牌形象,通過市場手段故意混淆現實與未來的需求。這就背離了技術發展的初衷,是應該遭到唾棄和批判。

  對於中間件而言,還是要回到用戶的需求上來!與兼顧未來相比,解決用戶現實的問題同等重要、甚至更為重要。即使是兼顧未來,大多數國內的中間件產品同樣是非常好的選擇!中間件市場上,一個技術上遙遙領先的巨無霸,其實並不存在!■

同类文章

溫柔文靜有帶有詩意的女孩名字

精選溫柔文靜有帶有詩意的女孩名字一、  彩靜 (cǎi jìng)字義內涵:彩:各種顏色交織;稱贊、誇獎的歡呼聲;花樣,完美的成分;光彩,光澤。
江姓屬牛男孩起名大全

江姓屬牛男孩起名大全

從陽光年齡的密封來看,它屬於這個國家。 Bo yi xiazi宣中在業務結束時成立。由於宋和齊三義之間存在洪水,淮水正在洪水,所以它無法得到強勢,最後由楚國
內心的方式真的不能讓女孩喜歡它嗎?內部追逐女孩技能

內心的方式真的不能讓女孩喜歡它嗎?內部追逐女孩技能

兄弟,我是一個導師。今天,我為您帶來了一個相對代表性的學生,最近遇到了教學服務。我相信每個人都能在看到我的分析後找到自己問題的陰影。學生亞歷克斯喜歡我 兄弟
Elegant and nice Chu surname girl name

Elegant and nice Chu surname girl name

How to get an elegant and nice song girl name? Let's take a look at Ren Xin.com
Tiger名字的話是什麼? 2022名稱大全寶貝好名字

Tiger名字的話是什麼? 2022名稱大全寶貝好名字

Tiger名字的話是什麼? 2022名稱大全寶寶好名字,父母必須知道如何給寶寶一個好名字和不同的名字?名字的小組有什麼預防措施?等待相關問題,我們已經解決了
The birth of eight characters, quasi! In 1971, the 46-year-old pig man was 50 years.

The birth of eight characters, quasi! In 1971, the 46-year-old pig man was 50 years.

(釧 釧 命) From "Three-life Warm", there is an ancient fortune book that is more fa
虎頭名字用水嗎? 2022名著名的名字

虎頭名字用水嗎? 2022名著名的名字

虎頭名字用水嗎? 2022名Daquan免費,正如俗話說,“人們被命名”,一個不錯的名字留下深刻的印象,許多父母也深入探索,各種文化之詞典故故冥冥冥冥特名名稱
2022年月曆出生的女嬰嬰兒五行缺乏金暖和慷慨的大全

2022年月曆出生的女嬰嬰兒五行缺乏金暖和慷慨的大全

在2022年,農曆出生的女性寶寶五行缺乏金色溫柔慷慨的大全。我想知道在2022年出生的女孩旁邊的下一個旁邊是什麼,用這個詞給女孩,更多地關注2022個女孩
八個字符的誕生,房間設計有助於您支付幸運

八個字符的誕生,房間設計有助於您支付幸運

馮水在我國是一種傳統的中國文化,是一個大學問題,考慮人類和環境的和諧。將地理信息技術集成到家居裝飾設計中,可以使室內設計更有效,室內裝飾更加科學
What is the name of Ma surname Daquan?

What is the name of Ma surname Daquan?

After the sun, the grandson of find the roots