您好,登錄后才能下訂單哦!
今天給大家介紹一下微服務(wù)和SOA的區(qū)別是什么。文章的內(nèi)容小編覺得不錯,現(xiàn)在給大家分享一下,覺得有需要的朋友可以了解一下,希望對大家有所幫助,下面跟著小編的思路一起來閱讀吧。
1.ESB(enterprise service bus)
從名稱就能知道,它的概念借鑒了計算機組成原理中的通信模型——總線,所有需要和外部系統(tǒng)通信的系統(tǒng),統(tǒng)統(tǒng)接入ESB,豈不是完美地兼容了現(xiàn)有的互相隔離的異構(gòu)系統(tǒng),可以利用現(xiàn)有的系統(tǒng)構(gòu)建一個全新的松耦合的異構(gòu)的分布式系統(tǒng)。
但,實際使用中,它還是會有很多的缺點,首先就是ESB的本身就很復(fù)雜,大大增加了系統(tǒng)的復(fù)雜性和可維護性。其次就是由于ESB想要做到所有服務(wù)都通過一個通路通信,直接降低了通信速度。
而在現(xiàn)代的微服務(wù)中,使用輕量級的通信機制,每個服務(wù)有自己的處理邏輯,它知道它要找的服務(wù)在哪里,不需要在通信的鏈路上做什么。
2. 服務(wù)化的概念和服務(wù)的尺寸
SOA的出現(xiàn)其實是為了解決歷史問題:企業(yè)在信息化的過程中會有各種各樣互相隔離的系統(tǒng),需要有一種機制將他們整合起來,所以才會有上邊所述的ESB的出現(xiàn)。同樣的,也造成了SOA初期的服務(wù)是很大的概念,通常指定的一個可以獨立運作的系統(tǒng)(這樣看,好像服務(wù)間天然的松耦合)。這種做法相當(dāng)于是「把子系統(tǒng)服務(wù)化」。
而微服務(wù)沒有歷史包袱,輕裝上陣,服務(wù)的尺寸通常不會太大,關(guān)于服務(wù)的尺寸,在實際情況中往往是一個服務(wù)應(yīng)該能夠代表「實際業(yè)務(wù)場景中的一塊不可分割或不易分割的業(yè)務(wù)實體」。將服務(wù)的尺寸控制在一個較小的體量可以帶來很多的好處。
3. 通信協(xié)議
如今越來越多的工程開始使用RESTful來作為API的設(shè)計的基礎(chǔ),但僅僅幾年前還有大把的API使用SOAP、WSDL等基于XML的重量級協(xié)議的Web Service。這點和上文說到的2點其實大同小異,仔細想想,它們都是由于歷史原因造成的,同樣的,通信協(xié)議經(jīng)過這些年的發(fā)展,現(xiàn)在主流的基本上了兩種:
文本協(xié)議使用最廣泛的多是基于HTTP的RESTful規(guī)范
輕量級二進制協(xié)議Thrift、Protobuf,或者任何自定義的輕量級協(xié)議
MSA的優(yōu)勢
1.服務(wù)粒度比較小,實現(xiàn)簡單,更易于實現(xiàn)低耦合、高內(nèi)聚
2.分布式部署,可獨立維護
3.在某個服務(wù)的壓力大的時候可以加實例實現(xiàn)水平擴展
4.更易于關(guān)注實際業(yè)務(wù)場景
以上就是微服務(wù)和SOA的區(qū)別是什么的全部內(nèi)容了,更多與微服務(wù)和SOA的區(qū)別是什么相關(guān)的內(nèi)容可以搜索億速云之前的文章或者瀏覽下面的文章進行學(xué)習(xí)哈!相信小編會給大家增添更多知識,希望大家能夠支持一下億速云!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。