那么這種架構(gòu)例子中,大家是不是看得出來非常適合復(fù)雜應(yīng)用系統(tǒng)整合、協(xié)作,因?yàn)楹苡锌赡芡ㄓ嵲O(shè)備服務(wù)提供了C 網(wǎng)絡(luò)通訊包,物資服務(wù)是Java平臺運(yùn)行,醫(yī)療資源服務(wù)又是.Net平臺運(yùn)行,但是大家基于統(tǒng)一的服務(wù)規(guī)約,提供精確而風(fēng)格一致的服務(wù)接口,那么對于BPM也好,ESB也好,就極大的減少了適配集成的復(fù)雜過程,讓各種業(yè)務(wù)和通訊系統(tǒng),都變成了一項(xiàng)服務(wù),作為SOA整體調(diào)度與管理的一枚棋子而存在 。這其實(shí)就有點(diǎn)SOA的精髓了 。
WebService的實(shí)現(xiàn)方式
往往很多人不太了解SOA的情況下,就會認(rèn)為Webservice就是SOA,所以這就是為什么先把上面的SOA思想以及架構(gòu)實(shí)現(xiàn)講講,大家就能對SOA有個(gè)整體全面的理解 。Webservice只是實(shí)現(xiàn)SOA構(gòu)件服務(wù)的一種手段,若將其中的換成基于RestFul風(fēng)格的實(shí)現(xiàn),也是沒有問題的 。
WebService又依賴于幾種具體的技術(shù)規(guī)范和協(xié)議了,具體描述我就直接引用吧:
SOAP(Simple ObjectAccess Protocol,簡單對象訪問協(xié)議) 定義了服務(wù)請求者和服務(wù)提供者之間的消息傳輸規(guī)范,SOAP 用 XML 來格式化消息,用 HTTP 來承載消息 。通過 SOAP,應(yīng)用程序可以在網(wǎng)絡(luò)中進(jìn)行數(shù)據(jù)交換和遠(yuǎn)程過程調(diào)用(Remote Procedure Call,RPC) 。如何通俗地去理解這三大件呢?
WSDL(Web ServiceDescription Language,Web 服務(wù)描述語言) 是對服務(wù)進(jìn)行描述的語言,它有一套基于 XML 的語法定義 。WSDL 描述的重點(diǎn)是服務(wù),它包含服務(wù)實(shí)現(xiàn)定義和服務(wù)接口定義 。
UDDI(Universal Descript百思特網(wǎng)ionDiscovery and Integration,統(tǒng)一描述、發(fā)現(xiàn)和集成) 提供了一種服務(wù)發(fā)布、查找和定位的方法,是服務(wù)的信息注冊規(guī)范,以便被需要該服務(wù)的用戶發(fā)現(xiàn)和使用它 。UDDI 規(guī)范描述了服務(wù)的概念,同時(shí)也定義了一種編程接口 。通過 UDDI 提供的標(biāo)準(zhǔn)接口,企業(yè)可以發(fā)布自己的服務(wù)供其他企業(yè)查詢和調(diào)用,也可以查詢特定服務(wù)的描述信息,并動(dòng)態(tài)綁定到該服務(wù)上 。

文章插圖
還是上個(gè)圖,看起來舒服一些 。如上圖所示:SOA中的服務(wù)1需要調(diào)用服務(wù)2的接口,那么我們就描述一下Webservices方式 。
首先虛線中,也就是開發(fā)階段服務(wù)1要去理解服務(wù)2的WSDL描述,清楚服務(wù)2提供的服務(wù)接口是什么樣子,描述語言就是XML,服務(wù)1的程序就知道需要設(shè)置什么參數(shù),返回什么結(jié)果 。
然后在運(yùn)行時(shí)服務(wù)1要從UDDI服務(wù)上,也就是注冊發(fā)現(xiàn)中心,找到服務(wù)2在哪里,由于服務(wù)2早已經(jīng)在UDDI服務(wù)中注冊,那么服務(wù)1就可以獲得服務(wù)2的路由地址 。再對需要傳遞的數(shù)據(jù)進(jìn)行SOAP格式編碼 。
SOAP是HTTP層之上的一個(gè)傳輸協(xié)議,服務(wù)1對傳遞參數(shù)進(jìn)行滿足SOAP協(xié)議的xml編碼和參數(shù)發(fā)送,形成對服務(wù)2的WebService接口調(diào)用,服務(wù)2接收到SOAP協(xié)議數(shù)據(jù),進(jìn)行xml解碼,然后再進(jìn)行內(nèi)部實(shí)現(xiàn)層的邏輯處理,并最終將結(jié)果仍然以SOAP方式編碼返回給服務(wù)1,由服務(wù)1再解碼數(shù)據(jù) 。這就完成了WebService的一次請求和響應(yīng) 。當(dāng)然了服務(wù)1也可以是一個(gè)普通的客戶端 。
從上述的圖示例子中,我們可以看到WebService是通過XML作為中間傳遞格式,這就兼容了異構(gòu)平臺的數(shù)據(jù)格式,SOAP協(xié)議大部分是基于HTTP協(xié)議(SOAP的設(shè)計(jì)不限于HTTP),這樣就兼容了異構(gòu)平臺數(shù)據(jù)傳輸 。
因此WebService的技術(shù)實(shí)現(xiàn)方案就非常符合SOA架構(gòu)中服務(wù)的異構(gòu)平臺兼容性要求(SOAP),并且具備完整規(guī)范的服務(wù)接口語義描述(WSDL)和服務(wù)注冊發(fā)現(xiàn)管理的規(guī)范定義(UDDI) 。
SOA與微服務(wù)的優(yōu)劣對比 往往沒有對比就沒有傷害,因此我們通過SOA架構(gòu)與微服務(wù)架構(gòu)的對比,來更深刻地認(rèn)識SOA架構(gòu)的優(yōu)勢與劣勢,同時(shí)也能掌握到微服務(wù)優(yōu)劣特征 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時(shí)就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助:- 痔瘡最怕的三種水果 痔瘡是什么東西
- 信用卡visa是什么意思 visa卡是什么意思
- 深圳最有名的特產(chǎn)是什么 深圳的特產(chǎn)
- 香蕉的味道怎么形容 香蕉是什么味道的
- 脂肪肝如何消除 脂肪肝是什么
- 畫蛇添足的釋義 誨人不倦的誨是什么意思
- ddos的中文全稱 ddos是什么
- 散戶買etf好還是買lof基金 etf基金是什么意思
- jv是什么縮寫 jv是什么意思
- 同比增幅最大什么意思 同比增長是什么意思
