2016-09-20 74 views

回答

0

很多人都涉及到微服務爲SOA 2.0,所以如果我正確地得到你的問題,你絕對可以在一個項目中...

+0

SOA中的ESB用於根據需要執行協議轉換/ req-resp轉換。由於微服務通常被視爲智能端點啞管,我們可以在微服務架構中處理這些情況? Netflix在其API網關中執行協議轉換,但它是否遵循SEDP原則? – Divs

+0

SOA和微服務中的重要原則是減少耦合,並避免狀態更改的同步通信,因爲該方面的消息傳遞可以幫助實現異步持久通信......您使用哪些工具並不是真正的意義......有意義嗎? –

+0

我想了解MSA中的哪個組件可以用來處理req/resp轉換。根據Web上的大多數文章,它是API網關層,而不是ESB。就在這種情況下,有人正在使用此層在MSA中執行相同的操作,他們是否違反SEDP原則? – Divs

1

簡單來說,微服務是SOA的子集,使用這兩種架構。您可以參考以下9 characteristics of Microservice,他們仍然遵循SOA設計原則:

組件化通過服務

各地的業務能力,組織

產品沒有項目

智能終端和啞管道

分散治理

分散d ATA管理

基礎設施自動化

失敗的設計

進化設計

如果你指的SOA架構實現ESB,然後使用ESB並不一定會讓你的SOA標準,除非你堅持服務特點/服務設計原則服務設計&建模。因此,讓我們分離服務的ESB。從根本上講,ESB只是SOA的一些非功能性元素的實現。

選擇一個整體的應用程序是一個基本的現象開始與微服務。不過,我堅信微服務可以用於更多的業務場景。

+0

我同意單獨使用ESB不會影響質量爲了一個好的SOA設計。但是,幾乎一致表示ESB不在MSA中使用。如果不是,爲什麼在這種情況下,MSA中的哪個組件/層可以處理xformation /協議翻譯等? – Divs

+0

在MSA中,我們遵循「智能終端和啞管道」,其中指出,變換/協議翻譯是相應的服務責任。換句話說,轉換/翻譯也可以作爲可重用的公用事業服務。儘管MSA不建議使用ESB,但同時它不會強制刪除ESB。在創建ESB與企業系統依賴關係的邏輯和緊密耦合情況下,您始終可以將ESB視爲MSA的一部分。 –

3

是的,你完全可以在同一環境中的架構。這是爲什麼:

微服務架構在很大程度上受到啓發SOA,所以自然在這兩個原則的使用是非常相似的,往往有兩個之間的混淆。但是,您應該注意,這些範例在範圍範圍內不同。 微服務架構是設計以特定方式的應用程序的方法,而SOA旨在把爲了在不同域中的多個異構應用程序(通常在企業環境)之間的通信,避免由具有點 - 點通信中間件,並且通常會降低集成工作量並長期提高投資回報率。 SOA不僅僅是一種架構方法,而是提供了一種全新的方法來優化企業中的IT域。它通常需要對流程和層次結構進行更改,因爲SOA治理機構需要在某個時間到位才能理想地執行企業策略。

因此,在實踐中,你會經常看到這樣的事情 - 在相同的一般SOA許多應用程序體系結構樣式:

many application architecture styles in the same general SOA

希望這有助於。