自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

深入挖掘WCF綁定原理

開發(fā) 后端
這里就WCF服務(wù)契約、約束做出了介紹,文章特別對WCF綁定進行詳細的解釋,希望大家看了本文會了解什么是WCF綁定。

WCF經(jīng)過長時間的發(fā)展,越來越多的人在使用它,所謂知識就是財富,這里把我的財富分享給大家。WCF綁定屬于WCF基本的技術(shù)要素,是WCF進行通信處理的基礎(chǔ)。了解綁定的相關(guān)知識,有助于開發(fā)WCF應(yīng)用程序。因為在不同的業(yè)務(wù)需求下,可能對通信方式、協(xié)議、消息編碼等多個方面會有不同的要求。在配制、發(fā)布和運行服務(wù)時,都需要對綁定進行操作。因而,我們必須掌握WCF內(nèi)置綁定的相關(guān)屬性,熟悉綁定元素的相關(guān)配置。此外,在一些高級應(yīng)用上,我們還要掌握自定義綁定的方式,了解在自定義綁定時,添加綁定元素的方式與順序,了解Binding基類的相關(guān)屬性和方法。以及與綁定配置相關(guān)的類。WCF綁定(Binding)、契約(Contract)與服務(wù)的地址(Address)組合在一起,則形成了終結(jié)點(Endpoint)。

#T#Address 是Endpoint的網(wǎng)絡(luò)地址,它標記了消息發(fā)送的目的地。Binding描述的是如何發(fā)送消息,例如消息發(fā)送的傳輸協(xié)議(如TCP,HTTP),安全(如SSL,SOAP消息安全)。Contract則描述的是消息所包含的內(nèi)容,以及消息的組織和操作方式,例如是單向,雙向還是請求/響應(yīng)方式。引入終結(jié)點可以說是WCF的一個偉大創(chuàng)舉,通過它使得我們能夠更加容易的發(fā)布和管理服務(wù),尤其是發(fā)布和管理多個服務(wù)。每個服務(wù)必須至少擁有一個終結(jié)點,而客戶端正是通過終結(jié)點知道服務(wù)的相關(guān)信息,例如地址、消息編碼格式、傳輸協(xié)議以及服務(wù)的內(nèi)容,然后在進行正確的調(diào)用。最特別的是,同一個服務(wù)可以定義多個終結(jié)點,每個終結(jié)點可以是不同的地址、不同的WCF綁定方式,以便于滿足多個客戶端的不同需要。而對于服務(wù)的發(fā)布者而言,我們只需要管理終結(jié)點的配置,就可以完成對服務(wù)的管理,這也為服務(wù)的托管提供了便利。

服務(wù)契約是WCF的主要處理對象,服務(wù)的定義和設(shè)置正是通過服務(wù)契約實現(xiàn)的。除了了解 ServiceContract和OperationContract的基礎(chǔ)應(yīng)用之外,還需要比較WCF服務(wù)編程與普通的.NET編程之間的區(qū)別,例如服務(wù)的繼承與多態(tài)是怎樣實現(xiàn)的。最重要的是如何根據(jù)SOA的思想劃分服務(wù)的邊界,確定服務(wù)的粒度大小,這需要從系統(tǒng)的易用性、可擴展性、性能等多個方面進行權(quán)衡。

服務(wù)契約中關(guān)于操作的定義要受到很多約束,其中最重要的就是對數(shù)據(jù)的處理,這也是WCF引入數(shù)據(jù)契約的目的。由于WCF的特殊性,因而我們需要了解一些特殊數(shù)據(jù)類型的序列化方式,例如泛型類型、集合、DataSet等。約束服務(wù)操作定義的還包括對異常的處理,WCF對異常有一套特殊的處理方式,可以根據(jù)實際的情況,確定異常消息是否需要進行通信,以及出現(xiàn)異常時,是否要求停止服務(wù)實例,或繼續(xù)維持會話。WCF 為消息傳遞提供了非常大的靈活性。它提供了專門的Message類以及相關(guān)的讀寫器,例如XmlDictionaryReader和 XmlDictionaryWriter等對消息進行讀寫,這其中包含了對消息版本、編碼格式、消息標頭和正文等的操作。同時,WCF還提供了消息與方法之間的映射。在提供系統(tǒng)的互操作性時,了解WCF的消息傳遞方式很有必要。

根據(jù)不同的需求,WCF將實例模式分為 PerCall,Single和PerSession三種方式。通過設(shè)置服務(wù)行為的InstanceContextMode屬性,來管理服務(wù)實例的生存周期,可以簡化開發(fā)人員的工作。我們只需要了解這三種實例模式的特性即可。通常情況下,我建議服務(wù)采用PerCall模式,如果需要維持服務(wù)與客戶端之間的會話,則可以采用PerSession模式。只有在對性能和可伸縮性沒有太大要求的情況下,才可以采用Single模式。

關(guān)于事務(wù)處理、并發(fā)處理以及安全,主要都是通過相關(guān)的服務(wù)行為進行設(shè)置和管理。這些內(nèi)容都是WCF高級應(yīng)用所必需掌握的內(nèi)容,尤其對于開發(fā)企業(yè)級應(yīng)用系統(tǒng)而言。至于隊列服務(wù),主要是利用了消息隊列,以實現(xiàn)系統(tǒng)可以脫機訪問服務(wù),并保持服務(wù)狀態(tài)的同步。

責任編輯:田樹 來源: 博客
相關(guān)推薦

2009-11-09 10:35:10

WCF REST服務(wù)

2022-10-24 00:18:41

Elasticsea分布式數(shù)量

2009-10-22 17:39:34

CLR內(nèi)存管理

2009-11-05 11:31:00

WCF綁定

2009-12-22 19:26:51

WCF綁定

2009-11-05 13:16:59

WCF代理

2009-11-09 17:06:38

WCF選擇綁定

2009-11-09 09:34:07

WCF集合

2009-11-05 13:00:25

WCF客戶端

2009-11-06 10:11:34

WCF和Web Ser

2010-02-22 17:07:50

WCF綁定元素

2010-03-01 18:04:35

WCF配置綁定

2009-11-09 13:23:35

WCF協(xié)定

2009-11-05 15:18:19

WCF擴展

2009-11-06 09:22:46

WCF應(yīng)用

2010-02-23 18:10:01

WCF綁定類型

2010-02-26 14:19:03

WCF用戶驗證

2010-03-01 17:52:03

WCF選擇綁定

2009-11-09 17:40:33

WCF配置可靠性

2010-03-02 13:36:23

WCF事務(wù)投票
點贊
收藏

51CTO技術(shù)棧公眾號