軟件體系結(jié)構(gòu)第六章

1. 分布式對(duì)象模型有一個(gè)共同的缺陷盔腔,即難以擴(kuò)展到互聯(lián)網(wǎng)上谤逼。

【要求服務(wù)的客戶與服務(wù)本身之間必須緊密耦合碑韵,即要求處在一個(gè)同質(zhì)的基礎(chǔ)結(jié)構(gòu)框架中】

2. Web服務(wù)是松散耦合的撬讽。它通過(guò)諸如HTTP蕊连、SMTP以及發(fā)揮了核心作用的XML等在Web上廣泛應(yīng)用的標(biāo)準(zhǔn)協(xié)議來(lái)實(shí)現(xiàn)統(tǒng)一的連接,使人們轉(zhuǎn)向基于消息的異步技術(shù)來(lái)實(shí)現(xiàn)具有高可靠性的系統(tǒng)游昼。

3. Web應(yīng)用和桌面應(yīng)用之間存在連接問(wèn)題甘苍。

【W(wǎng)eb應(yīng)用和桌面應(yīng)用之間的數(shù)據(jù)遷移常常是手動(dòng)完成】

4. Web服務(wù)作為一種新興的Web應(yīng)用模式,是一種嶄新的分布式計(jì)算模型烘豌,是Web上數(shù)據(jù)和信息集成的有效機(jī)制载庭。

5. Web服務(wù)是使用標(biāo)準(zhǔn)技術(shù)在Internet上運(yùn)行的商務(wù)流程,它可以使用標(biāo)準(zhǔn)的Internet協(xié)議廊佩,將功能綱領(lǐng)性的體現(xiàn)在Internet和Intranet上囚聚。

6. Web服務(wù)就像Web上的構(gòu)件編程,開發(fā)人員通過(guò)調(diào)用Web應(yīng)用編程接口标锄,將Web服務(wù)集成進(jìn)他們的應(yīng)用程序御吞,就像調(diào)用本地服務(wù)一樣。

7.?Web服務(wù)支持異構(gòu)操作系統(tǒng)之間的連接击敌。可以與分布在世界各地的應(yīng)用互連涡匀,實(shí)現(xiàn)無(wú)縫、高效的連接践剂。

8. Web服務(wù)的關(guān)鍵是Web服務(wù)體系結(jié)構(gòu)

(1)是由平臺(tái)構(gòu)建商提供的鬼譬、基于Internet的應(yīng)用解決方案

(2)這些方案可以用標(biāo)準(zhǔn)的格式通過(guò)Internet進(jìn)行調(diào)用,完成對(duì)業(yè)務(wù)的集成

9. Web服務(wù)技術(shù)核心基于可擴(kuò)展標(biāo)記語(yǔ)言XML的標(biāo)準(zhǔn)逊脯,包括:

(1)簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議优质,SOAP

a. SOAP是一種輕量的、簡(jiǎn)單的军洼、基于XML的協(xié)議巩螃。

b. SOAP是Web Service的基本通信協(xié)議。

(2)Web服務(wù)描述語(yǔ)言匕争,WSDL

【W(wǎng)SDL是一種XML文檔牺六,它定義SOAP消息和這些消息是怎樣交換的】

(3)統(tǒng)一描述、發(fā)現(xiàn)和集成協(xié)議汗捡,UDDI

10. Web服務(wù)可以分為5個(gè)邏輯層

(1)數(shù)據(jù)層:保存Web服務(wù)需要的所有物理數(shù)據(jù)

(2)數(shù)據(jù)訪問(wèn)層:為業(yè)務(wù)層提供數(shù)據(jù)服務(wù)

【優(yōu)點(diǎn):可以做數(shù)據(jù)的分布式處理淑际,有利于保護(hù)數(shù)據(jù)的完整性】

【缺點(diǎn):效率較低】

(3)業(yè)務(wù)層:提供業(yè)務(wù)邏輯

【業(yè)務(wù)邏輯:做一件事情的步驟】

(4)業(yè)務(wù)面:提供簡(jiǎn)單接口畏纲,直接映射到Web服務(wù)提供的過(guò)程

【提供一個(gè)到底層對(duì)象的可靠的接口,即功能列表】

(5)監(jiān)聽者:接收帶有請(qǐng)求服務(wù)的輸入消息春缕,解析這些消息盗胀,并把這些請(qǐng)求發(fā)送給業(yè)務(wù)面的相應(yīng)方法

【把消息發(fā)送給對(duì)應(yīng)的接口,有點(diǎn)像基于消息的隱式調(diào)用的體系風(fēng)格】

11. 共同特征

(1)應(yīng)用的分布式

【網(wǎng)絡(luò)中數(shù)據(jù)源和服務(wù)提供者都是分布式的锄贼,所以We服務(wù)是松散耦合的票灰,不關(guān)心數(shù)據(jù)源的格式】

【W(wǎng)eb服務(wù)對(duì)用戶具有分布透明性】

(2)應(yīng)用到應(yīng)用的交互

【集中式的控制對(duì)服務(wù)器壓力太大】

(3)平臺(tái)無(wú)關(guān)性

【W(wǎng)eb服務(wù)采用現(xiàn)有的規(guī)范的協(xié)議和約定,接口使用的標(biāo)準(zhǔn)簡(jiǎn)單宅荤、易理解】

(4)完好的封裝性

【使用者僅能看到提供的功能列表】

(5)高度集成能力

(6)松散耦合

【只要Web服務(wù)調(diào)用界面不變屑迂,Web服務(wù)實(shí)現(xiàn)的任何變是透明的,用戶無(wú)法察覺】

12. 一個(gè)完整的Web服務(wù)包括三種邏輯構(gòu)件

(1)服務(wù)提供者:提供服務(wù)冯键,并進(jìn)行注冊(cè)以使服務(wù)可用

? ? ? ? 服務(wù)代理:起中介作用惹盼,是服務(wù)的注冊(cè)構(gòu)件

? ? ? ? 服務(wù)請(qǐng)求者:可在應(yīng)用程序中通過(guò)服務(wù)代理請(qǐng)求服務(wù),調(diào)用所需服務(wù)

(2)發(fā)布:對(duì)服務(wù)進(jìn)行一定的描述并發(fā)布到代理服務(wù)器上惫确,進(jìn)行注冊(cè)手报。

? ? ? ? 發(fā)現(xiàn):服務(wù)請(qǐng)求者向服務(wù)代理發(fā)布服務(wù)查詢請(qǐng)求。服務(wù)代理提供規(guī)范的接口來(lái)接受服務(wù)請(qǐng)求者的查詢改化。服務(wù)請(qǐng)求者根據(jù)通用的行業(yè)分類標(biāo)準(zhǔn)瀏覽分類或者通過(guò)關(guān)鍵字搜索掩蛤,并逐步縮小查找范圍,直到找到滿足條件的服務(wù)為止陈肛。

? ? ? ? 綁定:分析從注冊(cè)服務(wù)器中得到的調(diào)用該服務(wù)所需的詳細(xì)綁定信息揍鸟,根據(jù)這些信息,服務(wù)請(qǐng)求者可以編程實(shí)現(xiàn)對(duì)服務(wù)的遠(yuǎn)程調(diào)用句旱。

13. Web服務(wù)開發(fā)生命周期可分為構(gòu)建阳藻、部署、運(yùn)行和管理四個(gè)階段前翎。

(1)構(gòu)建:構(gòu)建階段包括開發(fā)和測(cè)試Web服務(wù)的實(shí)現(xiàn)稚配,定義服務(wù)接口描述和定義服務(wù)實(shí)現(xiàn)描述畅涂。

(2)部署:向服務(wù)請(qǐng)求者或服務(wù)注冊(cè)中心發(fā)布服務(wù)服務(wù)接口和服務(wù)實(shí)現(xiàn)的定義港华。

(3)運(yùn)行:在運(yùn)行階段,可以調(diào)用Web服務(wù)午衰。

?(4)管理:管理階段包括持續(xù)的管理和經(jīng)營(yíng)Web服務(wù)應(yīng)用程序立宜。

14. Web服務(wù)棧

(1)SOAP本質(zhì)上是xml。

(2)可開發(fā)的為:發(fā)現(xiàn)服務(wù)臊岸、描述服務(wù)橙数、消息格式層,剩下兩個(gè)為基礎(chǔ)層帅戒。

(3)發(fā)現(xiàn)服務(wù)層:主要用來(lái)幫助客戶端應(yīng)用程序解析遠(yuǎn)程服務(wù)的位置灯帮,通過(guò)UDDI實(shí)現(xiàn)崖技。

? ? ? ? 描述服務(wù)層:為客戶端應(yīng)用程序提供與遠(yuǎn)程服務(wù)交互的描述信息,通過(guò)WSDL實(shí)現(xiàn)钟哥。

? ? ? ? 消息格式層:保證客戶端應(yīng)用程序和服務(wù)器端在格式設(shè)置上保持一致迎献,通過(guò)SOAP協(xié)議實(shí)現(xiàn)。

? ? ? ? 編碼格式層:為客戶端和服務(wù)器之間提供一個(gè)標(biāo)準(zhǔn)的腻贰、獨(dú)立于平臺(tái)的數(shù)據(jù)交換編碼格式吁恍,一般通過(guò)XML實(shí)現(xiàn)。

? ? ? ? 傳輸協(xié)議層:為客戶端和服務(wù)器提供交互的網(wǎng)絡(luò)通信協(xié)議播演,一般通過(guò)HTTP和SMTP實(shí)現(xiàn)冀瓦。

15. UDDI (統(tǒng)一描述、發(fā)現(xiàn)和集成)

(1)UDDI是Web服務(wù)集成的一個(gè)體系框架写烤。用來(lái)說(shuō)明一個(gè)Web服務(wù)的一些信息類型翼闽。

(2)注冊(cè)流程:

a. 客戶通過(guò)UDDI發(fā)出請(qǐng)求。

b. HTTP服務(wù)器發(fā)給SOAP服務(wù)器顶霞。

【SOAP用HTTP來(lái)承載消息±堆幔】

c. SOAP服務(wù)器解析請(qǐng)求古徒。

d. 去數(shù)據(jù)庫(kù)注冊(cè)拓提,按級(jí)返回隧膘。

16. XML

(1)是一種允許用戶定義自己的標(biāo)記的元語(yǔ)言代态。

(2)在Web服務(wù)中幾乎所有都是用XML描述的。

【W(wǎng)eb服務(wù)的所有接口蹦疑、對(duì)Web服務(wù)的請(qǐng)求核畴、Web服務(wù)的應(yīng)答數(shù)據(jù)】

17. SOAP

(1)SOAP本身不定義任何應(yīng)用語(yǔ)言跟束,只定義簡(jiǎn)單的機(jī)制氧腰,通過(guò)提供一個(gè)有標(biāo)準(zhǔn)構(gòu)件的包模型和通過(guò)在模塊中對(duì)數(shù)據(jù)編碼的機(jī)制,來(lái)定義一個(gè)簡(jiǎn)單的表示應(yīng)用語(yǔ)義的機(jī)制盔然。

【SOAP是一種機(jī)制】

(2)典型SOAP通信體系結(jié)構(gòu)中的一些組件:SOAP客戶機(jī)愈案、SOAP服務(wù)器馁筐、實(shí)際服務(wù)舱卡。

【實(shí)際服務(wù)存放實(shí)際代碼队萤,求出結(jié)果并返回】

(3)SOAP包括4個(gè)部分:SOAP信封(強(qiáng)制)既绩、SOAP編碼規(guī)則、SOAP?RPC表示、SOAP綁定

(4)一個(gè)典型 SOAP 通信體系結(jié)構(gòu)的組件:

a. SOAP客戶機(jī):是一臺(tái)有SOAP機(jī)制的機(jī)器惊科,它可以產(chǎn)生SOAP請(qǐng)求并通過(guò)HTTP發(fā)送到服務(wù)器充活。

b. SOAP服務(wù)器:是一臺(tái)有SOAP機(jī)制的機(jī)器,能夠接收來(lái)自SOAP客戶機(jī)的請(qǐng)求蜡娶,并對(duì)之作出適當(dāng)?shù)捻憫?yīng)混卵。

?在SOAP服務(wù)器內(nèi)部有三個(gè)實(shí)體:服務(wù)管理器、被部署服務(wù)的列表(判斷服務(wù)存在與否)窖张、XML轉(zhuǎn)換程序(解析XML)

【服務(wù)器解析XML代碼幕随,取出請(qǐng)求,判斷有沒有服務(wù)】

c. 實(shí)際服務(wù):被調(diào)用的方法就會(huì)完成它的工作并且將結(jié)果信息返回XML轉(zhuǎn)換程序宿接。

【注意是直接返回結(jié)果】

18. 基于面向服務(wù)架構(gòu)SOA

(1)SOA為一種應(yīng)用程序體系結(jié)構(gòu)赘淮,在這種體系結(jié)構(gòu)中辕录,所有功能都定義為獨(dú)立的服務(wù),這些服務(wù)帶有定義明確的可調(diào)用接口梢卸。

(2)SOA為客戶端/服務(wù)器的軟件設(shè)計(jì)方法走诞,一項(xiàng)應(yīng)用由軟件服務(wù)和軟件服務(wù)使用者組成。

(3)SOA與大多數(shù)通用的客戶端/服務(wù)器模型不同之處蛤高,在于它著重強(qiáng)調(diào)軟件構(gòu)件的松散耦合蚣旱,并使用獨(dú)立的標(biāo)準(zhǔn)接口。

(4)一個(gè)完整的面向服務(wù)的體系結(jié)構(gòu)模型

(5)單個(gè)服務(wù)內(nèi)部結(jié)構(gòu):

(6)SOA模型的特征:

a. 松散耦合

【靈活性高戴陡,包容修改】

b. 粗粒度服務(wù)

c. 標(biāo)準(zhǔn)化接口

【采用中立的方式定義】

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末姻锁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子猜欺,更是在濱河造成了極大的恐慌位隶,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件开皿,死亡現(xiàn)場(chǎng)離奇詭異涧黄,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)赋荆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門笋妥,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人窄潭,你說(shuō)我怎么就攤上這事春宣。” “怎么了嫉你?”我有些...
    開封第一講書人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵月帝,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我幽污,道長(zhǎng)嚷辅,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任距误,我火速辦了婚禮簸搞,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘准潭。我一直安慰自己趁俊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開白布刑然。 她就那樣靜靜地躺著寺擂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上沽讹,一...
    開封第一講書人閱讀 52,457評(píng)論 1 311
  • 那天,我揣著相機(jī)與錄音武鲁,去河邊找鬼爽雄。 笑死,一個(gè)胖子當(dāng)著我的面吹牛沐鼠,可吹牛的內(nèi)容都是我干的挚瘟。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼饲梭,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼乘盖!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起憔涉,我...
    開封第一講書人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤订框,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后兜叨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體穿扳,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年国旷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了矛物。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡跪但,死狀恐怖履羞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情屡久,我是刑警寧澤忆首,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站被环,受9級(jí)特大地震影響雄卷,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蛤售,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一丁鹉、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧悴能,春花似錦揣钦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春宇姚,著一層夾襖步出監(jiān)牢的瞬間匈庭,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工浑劳, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留阱持,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓魔熏,卻偏偏與公主長(zhǎng)得像衷咽,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蒜绽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理镶骗,服務(wù)發(fā)現(xiàn),斷路器躲雅,智...
    卡卡羅2017閱讀 134,708評(píng)論 18 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法鼎姊,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法相赁,繼承相關(guān)的語(yǔ)法此蜈,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 31,664評(píng)論 18 399
  • 一. Java基礎(chǔ)部分.................................................
    wy_sure閱讀 3,814評(píng)論 0 11
  • 國(guó)家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報(bào)批稿:20170802 前言: 排版 ...
    庭說(shuō)閱讀 11,007評(píng)論 6 13
  • 從三月份找實(shí)習(xí)到現(xiàn)在噪生,面了一些公司裆赵,掛了不少,但最終還是拿到小米跺嗽、百度战授、阿里、京東桨嫁、新浪植兰、CVTE、樂視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,277評(píng)論 11 349