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

應(yīng)用承載WCF ServiceHost實例分析

開發(fā) 后端
每個進(jìn)程都至少有一個應(yīng)用程序域,并且每個應(yīng)用程序域都可以承載零個或更多的WCF ServiceHost 實例,文章有詳細(xì)的介紹。

WCF還是比較常用的,于是我研究了一下WCF ServiceHost,在這里拿出來和大家分享一下,希望對大家有用。.NET 應(yīng)用程序需要一個作為宿主的 Windows 進(jìn)程。該 Windows 進(jìn)程內(nèi)部可以承載多個 .NET 應(yīng)用程序域。應(yīng)用程序域是 .NET CLR 將托管代碼與 Windows 進(jìn)行隔離所采用的一種手段。CLR 會在每個工作進(jìn)程中進(jìn)行初始化,并自動創(chuàng)建一個默認(rèn)的應(yīng)用程序域。該默認(rèn)應(yīng)用程序域運(yùn)行于某個進(jìn)程,并直到該進(jìn)程結(jié)束時才會卸載。默認(rèn)應(yīng)用程序域的關(guān)閉是由 CLR 來控制的。

為了調(diào)用服務(wù)上的操作,客戶端首先需要把服務(wù)合同導(dǎo)入到客戶端的本地描述中。這意味著,該服務(wù)需要客戶端暴露一個標(biāo)準(zhǔn)方法以檢索它的元數(shù)據(jù)-這是通過讓服務(wù)暴露一個元數(shù)據(jù)交換(MEX)端點來實現(xiàn)的。只要服務(wù)在宿主上注冊至少一個TCP、HTTP或IPC基地址,那么,這個基于WCF的服務(wù)就能夠自動地暴露一個MEX端點。

#T#在大多數(shù)宿主中,默認(rèn)應(yīng)用程序域內(nèi)部并不運(yùn)行任何代碼。而是由宿主(或“進(jìn)程”)來新建應(yīng)用程序域,以便應(yīng)用程序域可以獨立于進(jìn)程而關(guān)閉。在很多應(yīng)用程序中,理想的情況是客戶端代碼和服務(wù)器端代碼分別在不同應(yīng)用程序域中執(zhí)行。通常這種要求是出于安全性和隔離等原因的考慮。進(jìn)程和應(yīng)用程序域之間的關(guān)系類似于應(yīng)用程序和應(yīng)用程序域與 ServiceHostWCF 之間的關(guān)系。如圖所示,每個進(jìn)程都至少有一個應(yīng)用程序域,并且每個應(yīng)用程序域都可以承載零個或更多的WCF ServiceHost 實例。WCF 需要一個 Windows 進(jìn)程內(nèi)部至少要承載一個應(yīng)用程序域。

注意 盡管可以實例化多個 ServiceHost 實例,但每個應(yīng)用程序域內(nèi)保留一個 ServiceHost 實例更便于操作。您可以在一個宿主內(nèi)使用多個端點公開多個服務(wù)接口。更高級的宿主(例如,IIS 和 WAS)確實可以實例化多個 ServiceHost 實例,以提供隔離和不同的安全上下文。

因此,宿主的主要任務(wù)是向 WCF ServiceHost 提供 Windows 工作進(jìn)程和應(yīng)用程序域。此外,WCF 依賴于應(yīng)用程序域提供的安全和配置功能。Windows 進(jìn)程始終使用默認(rèn)標(biāo)識運(yùn)行,WCF 服務(wù)可隨時使用這個現(xiàn)成的標(biāo)識。但是,WCF 提供了幾個級別的模擬用戶的功能。如果您不使用這些功能,則由運(yùn)行服務(wù)的 Windows 進(jìn)程提供安全上下文。前面幾章提到過,默認(rèn)情況下 WCF 依賴于 .NET Framework 中的配置功能,您可以通過應(yīng)用程序域?qū)ζ溥M(jìn)行訪問。

某些宿主還具有管理所運(yùn)行的應(yīng)用程序的其他功能。最為突出的是,IIS 還具備自動進(jìn)程回收、資源限制、日志記錄、運(yùn)行狀況指示器等其他功能。您可以通過整個章節(jié)的學(xué)習(xí)了解有關(guān)這些主題的詳細(xì)內(nèi)容。(不同 IIS 版本具有受 WCF 支持的不同的可管理性功能。最為明顯的,Windows XP 中的 IIS 5.1 在管理用戶界面方面就受到一些限制。)

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

2009-11-05 14:03:57

WCF承載環(huán)境

2009-12-22 19:06:51

WCF自承載

2023-09-28 11:42:15

2009-11-06 09:39:40

WCF契約

2009-11-05 14:13:33

WCF自承載

2009-11-06 09:22:46

WCF應(yīng)用

2009-11-05 16:01:51

WCF單調(diào)服務(wù)

2009-11-06 15:02:47

WCF契約查詢

2009-11-06 15:41:25

WCF自托管宿主

2010-03-01 15:40:04

WCF實例停用

2010-02-23 10:25:29

2010-02-22 17:51:46

WCF傳較大數(shù)據(jù)

2010-02-22 13:28:05

WCF異步調(diào)用

2010-02-23 18:10:01

WCF綁定類型

2010-03-02 14:06:37

WCF服務(wù)實例管理模式

2009-11-05 11:12:21

WCF自宿主

2010-03-01 18:11:40

WCF數(shù)據(jù)契約變更

2010-03-01 10:45:59

WCF集合類

2009-09-14 17:03:32

LINQ模糊查詢

2009-11-05 14:40:08

WCF KnownTy
點贊
收藏

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