WCF入门的了解准备工作
了解WCF, 及WCF入門需要掌握哪里基本概念?
?
1.準(zhǔn)備工作
? >1.1 . XML
? >1.2 . Web Service
? >1.3 . 遠(yuǎn)程處理 (RPC)
? >1.4. ?消息隊(duì)列(MSMQ)
? >1.5. ?面向服務(wù)的體系結(jié)構(gòu)(SOA)
——————————————————————————————————————————————————————————————
1.1 XML
因?yàn)橐约坝刑嗟南热酥更c(diǎn), 關(guān)于XML的文章也是無數(shù), 需要掌握XML的基本的一些概念: 可以訪問 ?http://www.w3school.com.cn/
這里就簡單的說明一下關(guān)于XML的一些基礎(chǔ)的概念。
【XML(Extensible Markup Language,可擴(kuò)展的標(biāo)記語言)】
是一套用文本來定義語義標(biāo)記的元標(biāo)記語言,具有與平臺(tái)無關(guān)、可靈活的定義數(shù)據(jù)和結(jié)構(gòu)信息、便于網(wǎng)絡(luò)傳遞等優(yōu)勢(shì)。
?
?
XML特點(diǎn) XML是文本編碼,因此不受所選用的操作系統(tǒng)、對(duì)象模型和編程語言的影響,可在任何網(wǎng)絡(luò)中正常傳輸。
?
XML中的所有標(biāo)記都是自定義的,通過這些自定義的標(biāo)記,可描述某種數(shù)據(jù)的不同部
分及其嵌套的層次結(jié)構(gòu)。XML規(guī)定所有標(biāo)記都必須有開始和結(jié)束標(biāo)志。
?
引用W3C的一個(gè)簡單的示例, 可以簡單的了解XML的基礎(chǔ)結(jié)構(gòu)(如下圖)
1.2 Web Service
?
Web Service也叫Web服務(wù),根據(jù)數(shù)據(jù)交換格式的不同,Web Service又進(jìn)一步分為XML Web Service和JSON Web Service等。
XML Web Service是一種以XML作為數(shù)據(jù)交換格式。 以JSON作為數(shù)據(jù)交換格式的Web服務(wù)稱為JSON Web Service。
?
?
在Web Service的服務(wù)體系結(jié)構(gòu), 是由3個(gè)組成部分, 分別是:
1. 服務(wù)提供者
2. 服務(wù)請(qǐng)求者
3. 服務(wù)注冊(cè)中心?
利用發(fā)布、發(fā)現(xiàn)、綁定的三個(gè)基本操作組成。
?
客戶端與Web服務(wù)如何通信
1.客戶端調(diào)用的web服務(wù), 主要的過程:
(1) 客戶端創(chuàng)建web服務(wù)的代理類的實(shí)例。
(2)通過調(diào)用代理類的具體的實(shí)現(xiàn)方法。
(3)客戶端程序?qū)⒎?wù)所需要的參數(shù)序列化為SOAP消息, 然后通過網(wǎng)絡(luò)發(fā)送到web服務(wù)器中。
(4)web服務(wù)器接受到SOAP消息 , 此時(shí), 將消息反序列為XML格式, 同時(shí)創(chuàng)建web服務(wù)的實(shí)例, 調(diào)用Web服務(wù)提供的具體方法,
?將反序列化的XML作為參數(shù)傳遞到方法中。
(5)執(zhí)行web服務(wù)提供的具體方法, 得到相應(yīng)的返回值和一些消息參數(shù)。
(6)web服務(wù)器將返回值和一些消息參數(shù)序列化為SOAP消息, 然后通過網(wǎng)絡(luò)返回到客戶端的程序中。
(7)客戶端接受到web服務(wù)器返回的SOAP消息, 將XML 反序列為返回值和消息參數(shù), 傳輸?shù)酱眍惖膶?shí)例里。
(8)客戶端應(yīng)用接受到返回值和消息參數(shù)。
2.客戶端程序與Web服務(wù)通信過程
下面的圖 讓大家秒懂 "挖布澀維斯" 與 客戶機(jī)應(yīng)用程序 的通信過程 。
?
?
1.3 遠(yuǎn)程處理RPC
?
RPC(Remote Procedure Call) —— 遠(yuǎn)程過程調(diào)用。
遠(yuǎn)程處理技術(shù)是為了解決不同計(jì)算機(jī)上的進(jìn)程相互訪問的一種具體實(shí)現(xiàn)。.NET遠(yuǎn)程處理模型生成一個(gè)應(yīng)用程序,
并讓其中兩個(gè)組件直接跨應(yīng)用程序域邊界進(jìn)行通信。此時(shí)需要生成以下內(nèi)容:
> 一個(gè)可遠(yuǎn)程處理的對(duì)象。
>一個(gè)宿主應(yīng)用程序域,用于偵聽針對(duì)該對(duì)象的請(qǐng)求。
> 一個(gè)客戶端應(yīng)用程序域,用于發(fā)出針對(duì)該對(duì)象的請(qǐng)求。
神奇的的跳轉(zhuǎn)鏈接 : 關(guān)于RPC的更詳細(xì)的說明 ,http://www.cnblogs.com/fqfanqi/p/6140877.html
?
1.4 消息隊(duì)列(MSMQ)
MQ(Message Queue)是在多個(gè)不同的應(yīng)用程序之間實(shí)現(xiàn)相互通信的一種基于隊(duì)列和事務(wù)處理的異步傳輸模式。
其實(shí)現(xiàn)原理是:
消息發(fā)送者把要發(fā)送的信息放入一個(gè)容器中(稱為Message),
然后把它保存至一個(gè)系統(tǒng)公用的消息隊(duì)列(Message Queue)中;
本地或者是異地的消息接收程序再從該隊(duì)列中取出發(fā)給它的消息進(jìn)行處理。 MSMQ是微軟實(shí)現(xiàn)的MQ。
引文 :?http://www.cnblogs.com/Leo_wl/p/4021039.html
?
1.5?面向服務(wù)的體系結(jié)構(gòu)(SOA)
?
SOA(Service-Oriented Architecture,面向服務(wù)的體系結(jié)構(gòu))。
其基本思想就是希望用一種統(tǒng)一的、以"服務(wù)"為中心的模型來整合各種不同的技術(shù),而不是僅僅限于Web服務(wù)。
對(duì)于.NET開發(fā)人員來說,這個(gè)基于SOA的具體實(shí)現(xiàn)就是WCF, 而關(guān)于整篇所講的內(nèi)容, 都是對(duì)于我們了解及使用
WCF有鋪墊性的作用。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zh7791/p/6907845.html
總結(jié)
以上是生活随笔為你收集整理的WCF入门的了解准备工作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux重置root密码
- 下一篇: 5.26下午 阅读