soa 和 mashup - 兩種驅動更快/更廉價服務開發的架構模式。它們都被用於構建可復用的服務 - 但是它們之間有哪些區別呢?
soa 其實是一套由
9 大設計原則組成用於構建高可復用服務的設計方法。如果我們根據這 9 大設計原則來對 mashup 進行評估的話,結果會怎樣呢?
√ 服務協同
mashup 常常是基於諸如 xml、http、rest、web services、rss 以及 atom 等標準的,所以它們的協同程度是比較高的。
與遺留系統的互操作性也是可能的。soa 解決方案常常會使用企業訊息匯流排 (esb) 來促進協同性 - 乙個 mashup 沒有任何理由不去使用 esb 同樣的方式。
× 標準服務契約
大多數 mashup 缺乏乙個 soa 服務所期望的明確的服務契約。
× 服務松耦合
mashup 訂閱者被緊密地和 mashup 發布者耦合在一起。只有當 mashup 通過 web service wsdl 或類似契約發布的時候是例外,但這是很少見的。
√ 服務抽象
通過將自己的業務與外部世界隱藏起來,大多數 mashup 能夠滿足這一標準。
√ 服務復用
現今部署的大多數 mashup 都用於大規模消費並且是高可復用的。
√ 服務自治
mashup 一般會具有對其所封裝業務邏輯的控制權。
× 服務無狀態
很多 mashup 儲存請求某個資料庫中的特定資料。大多數時候該 mashup 自己直接訪問資料來源。
× 服務發現
由於 mashup 通常會缺乏乙個明確的服務契約,一般是不可被發現的。
√ 服務組合
網際網路 mashup 通常被設計用於多種用途。它們通常提供細顆粒的功能點,在大多數場景下是可以進行組合的。
mashup = soa?
根據 soa 設計原則進行評估,大多數網際網路 mashup 能夠得到 9 分里的 5 分。當今公開部署的 mashup 很少會考慮到 soa 服務化治理。
mashup 和 soa 能否進行融合?
mashup 由一些網際網路公司所提供的非正式 api 所演變而來。soa 是一套被用於構建企業級解決方案的較為嚴謹的設計原則。
對於兩者的融合是有一些跡象。將 mashup 應用於企業級的興趣呈現出乙個上公升的趨勢。這將驅動 mashup 標準化的提公升。而關於對 mashup 制定標準化、可發現服務契約的興趣也呈現出乙個上公升的趨勢。
如果對於向 mashup 提供 soa 設計原則有乙個推動力的話 - 網際網路可能會變成乙個超大型的 soa。
the world's biggest soa,發布日期:2011 年 2 月 4 日。
作者簡介
anna mar 是一名擁有 18 年以上金融領域經驗的首席架構師,當前就職於東京的一家電信公司。
世界上最大的賭局?!!
她不得不離開我,尋找新的生活,我沒有不愛她,沒有對不起過她,她也愛我,可世界有很多事情不是自己能控制的,她選擇了她的父母,放棄了我.從她放棄我,離開我的那一刻起,她就開始了一場賭局,我的愛,我對她的疼愛,我對她的執著,我對她的好,我對她的包容,和可以給她一輩子的關懷,幸福生活,當了籌碼,她要賭的是,...
世界上最遠的距離
世界上最遠的距離莫過於我站在你面前,可你並不知道我愛你 泰戈爾 世界上最遠的距離 不是生與死的距離 而是我站在你的面前 你卻不知道我愛你 世界上最遠的距離 不是我站在你的面前 你卻不知道我愛你 而是愛到痴迷 卻不能說我愛你 世界上最遠的距離 不是我不能說我愛你 而是想你痛徹心脾 卻只能深埋心底 世界...
世界上最小的linux PC
大家看到的那個黑色的立方體就是世界上最小的linux pc space cube,它是日本shimafuji corporation製作出了一款超小型電腦,本來是為太空任務設計的,它設法將usb埠,讀卡器 音訊輸出和專門的私有介面全都塞到乙個立方體盒子中,底盤大小僅為2平方英吋。這台超小型pc處理器...