SOAP協議棧是令人尷尬的失敗?
關於REST vs. SOAP的爭論已不是什麼新鮮事了。然而,現就職於Sun公司的XML權威Tim Bray近期的一番話再次引發了這一爭論。在OSCON上接受採訪時,Tim Bray說:
目前,SOAP協議棧通常被認為是一個令人尷尬的失敗……SOAP協議棧能做的,REST也能做,而且在可行性、優美性、代價和經濟上更優於前者,只是我們尚缺乏相關工具。
跟以往的情況一樣,雙方的支持者們紛紛出動併發言支援自己所鍾愛的風格。他們在Service-Oriented-Architecture Yahoo!討論組上的辯論已經形成了一個有超過150條回覆的主題。爭論中,Nick Gall給出了一個已拋棄SOAP技術的大公司的案例:
好幾年前,沃爾瑪將其供應鏈的VAN EDI基礎設施替換成為EDIINT AS2,並一直愉快地沿用至今。AS2本質上屬於普通老式XML(Plain Old XML,POX),它用自己的方法實現了可靠訊息傳遞的冪等性。
Mark Baker補充道:
我一直都說SOAP不會在防火牆以外獲得廣泛使用的。
在談到什麼樣的例子才能被算作一個使用SOAP的成功案例時,Nick Gall指出:
實際上我在尋找的,是那些真正利用了SOAP的強大、並有力地證明了“此問題用SOAP可以解決、而用其他技術則面臨困境”的大公司。在我看來,真正需要用SOAP來解決問題的公司並不多——SOAP進入這些公司,要麼是諮詢師將之列入了檢查列表,要麼是因為有些工具預設使用SOAP。大部分應用SOAP的場合似乎只是慣性使然,而不是相信SOAP在完成這件事上存在優勢。
但Eric Newcomer對Nick給出的例子卻不以為然:
你的例子是一個在B2B場景下用REST來替代EDI的客戶。EDI是面向文件的,REST也是,所以這不足為奇。
我知道有很多使用REST的大公司,因為它們主要是面向Web的公司,所以它們設計和建立的是基於Web的資料中心。但我沒聽說過有公司資料中心先於Web就存在了還採用REST的。
……
我是一個主張“為任務採取正確工具”的人,我不認為人人都能從使用REST中得到好處,也不認為人人都能從使用Web服務中得到好處。
另外,Steve Jones對於SOAP因為複雜而不被採用的說法表示不贊同,他說:
我從不選擇複雜的東西。REST並不簡單,它自己有一些非常“好的”方面——但那些並不簡單;而且它還有一些尚未解決的重大難題(比方說安全性)。SOAP並不複雜,人們抱怨SOAP,說它太簡單了、將網路隱藏起來了。所以說,不採用SOAP的原因可能很多,但說它複雜是不妥的。
雖然David Chappell曾斷言“REST與WS-*戰爭結束”,不過顯然,這又是一次關於REST vs. WS-*/SOAP的無休止的辯論。人們都希望這一持久的爭論能有個真正的了斷,不過那不會“由一方取得壓倒性的勝利”。正如John Evdemon所說,
一種方案不可能處處適用——選用最適合你客戶需求的方案,並用它把事情做好。
Gervas Douglas提議對REST和SOAP進行協議棧的比較,以消除雙方在理解上的嚴重不一致。不過,關於參考模型的選取存在不同意見。Steve Jones建議以SOA RM為基礎設計SOA棧,然後拿REST/SOAP對照此棧進行比較;而Mark Baker則主張以OSI參考模型為參照。不管怎樣,反正Gervas Douglas已經為協議棧比較建立好了wiki條目,讓我們拭目以待,看看那裡最終會怎樣。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14780828/viewspace-428181/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- soap協議的web服務協議Web
- 瞭解下SOAP HTTP 協議HTTP協議
- SOAP協議規範(一)協議
- SOAP協議規範(二)協議
- 業務測開的尷尬定位
- rman duplicate clone庫的尷尬
- 應用整合的尷尬 (轉)
- Http get,post,soap協議的區別HTTP協議
- onvif soap 協議的錯誤程式碼協議
- 難免的尷尬:程式碼依賴
- zstack協議棧協議
- 程式設計師四十很尷尬程式設計師
- HTTP和SOAP完全就是兩個不同的協議HTTP協議
- 軟體測試工程師的尷尬工程師
- Scrum 失敗案例(1):令人噁心的 Daily ReportScrumAI
- 1、zstack協議棧協議
- ERP處在尷尬情形 商業智慧是ERP的稻草?(轉)
- Xbox的日進之路,微軟的尷尬困局微軟
- Ajax通過SOAP協議呼叫Web服務協議Web
- 蒂姆.威爾茨:處境尷尬的 DooM 元老OOM
- 拿什麼拯救你,“尷尬”的UI介面?(一)UI
- TI的TCP/IP協議棧--NDK .TCP協議
- 奧巴馬陷入尷尬:蘋果接受中國反恐法草案蘋果
- 如何擺脫專案命名困難的尷尬局面
- 記一次尷尬的評論翻車事件事件
- 尷尬的遊戲使用者體驗設計師遊戲
- 無處不在的Windows藍屏 這或許是微軟最尷尬的事(多圖)Windows微軟
- 在Linux中,TCP/IP協議棧的工作原理是什麼?LinuxTCP協議
- 亞馬遜Alexa是如何失敗的?亞馬遜
- Zstack協議棧結構的初步解析協議
- 尷尬!EXCEL百萬行資料量就歇菜了,還是這個方法實用Excel
- Edge的尷尬:開發者工具癱瘓多日無人反饋
- 網路安全保障為何仍處尷尬期?
- 寒冬籠罩 COACH線上策略遇銷量尷尬
- 跨團隊協作總是失敗?多半是這個障礙搞的鬼
- [計算機網路]協議棧計算機網路協議
- 中國手機遊戲開發者正處於“尷尬時期”?遊戲開發
- 開發者談失敗:有很多令人驚歎的故事卻沒有成功的結局