日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
WCF性能計(jì)數(shù)器應(yīng)用特點(diǎn)介紹

WCF開(kāi)發(fā)工具功能強(qiáng)大,其中包含有許多功能特點(diǎn),值得我們?nèi)ド钊胙芯?。其中就包括我們今天為大家介紹的WCF性能計(jì)數(shù)器。在這篇文章中,大家將會(huì)通過(guò)各種示例來(lái)詳細(xì)了解一下WCF性能計(jì)數(shù)器的應(yīng)用方式。

讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名申請(qǐng)、網(wǎng)站空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、墨江網(wǎng)站維護(hù)、網(wǎng)站推廣。

啟用WCF性能計(jì)數(shù)器

您可以通過(guò) WCF 服務(wù)的 app.config 配置文件啟用 WCF 服務(wù)的性能計(jì)數(shù)器,如下所示:

 
 
 
  1. < configuration> 
  2. < system.serviceModel> 
  3. < diagnostics performanceCounters="All" /> 
  4. < /system.serviceModel> 
  5. < /configuration> 

可以將 performanceCounters 屬性設(shè)置為啟用特定類(lèi)型的性能計(jì)數(shù)器。有效值為

All:?jiǎn)⒂盟蓄?lèi)別計(jì)數(shù)器(ServiceModelService、ServiceModelEndpoint 和 ServiceModelOperation)。

ServiceOnly:僅啟用 ServiceModelService 類(lèi)別計(jì)數(shù)器。

Off:禁用 ServiceModel* 性能計(jì)數(shù)器。這是默認(rèn)值。

如果要啟用所有 WCF 應(yīng)用程序的性能計(jì)數(shù)器,則可以將配置設(shè)置放置到 Machine.config 文件中。有關(guān)在計(jì)算機(jī)上為性能計(jì)數(shù)器配置足夠內(nèi)存的更多信息,請(qǐng)參見(jiàn)“增加性能計(jì)數(shù)器的內(nèi)存大小”(可能為英文網(wǎng)頁(yè))一節(jié)。

還可以在代碼中啟用WCF性能計(jì)數(shù)器,如下所示:

 
 
 
  1. using System.Configuration;  
  2. using System.ServiceModel.Configuration;  
  3. using System.ServiceModel.Diagnostics;  
  4. Configuration config = ConfigurationManager.OpenExeConfiguration(  
  5. ConfigurationUserLevel.None);  
  6. ServiceModelSectionGroup sg = ServiceModelSectionGroup.
    GetSectionGroup(config);  
  7. sg.Diagnostic.PerformanceCounters = PerformanceCounterScope.All;  
  8. config.Save(); 

查看性能數(shù)據(jù)#t#

若要查看性能計(jì)數(shù)器捕獲的數(shù)據(jù),則可以使用 Windows 附帶的性能監(jiān)視器 (Perfmon.exe)。通過(guò)轉(zhuǎn)到“開(kāi)始”,單擊“運(yùn)行”并在對(duì)話框中鍵入 perfmon.exe 以啟動(dòng)該工具。

注意:

WCF性能計(jì)數(shù)器實(shí)例可能會(huì)在終結(jié)點(diǎn)調(diào)度程序處理最后一條消息之前被釋放。這可能導(dǎo)致不能為某些消息捕獲性能數(shù)據(jù)。

增加性能計(jì)數(shù)器的內(nèi)存大小

WCF 為其性能計(jì)數(shù)器類(lèi)別使用單獨(dú)的共享內(nèi)存。

默認(rèn)情況下,單獨(dú)的共享內(nèi)存被設(shè)置為全局性能計(jì)數(shù)器內(nèi)存大小的四分之一。默認(rèn)的全局性能計(jì)數(shù)器內(nèi)存大小為 524,288 字節(jié)。因此,三個(gè) WCF 性能計(jì)數(shù)器類(lèi)別默認(rèn)分別具有約 128KB 的內(nèi)存大小。根據(jù)計(jì)算機(jī)上 WCF 應(yīng)用程序的運(yùn)行時(shí)特性,性能計(jì)數(shù)器內(nèi)存可能會(huì)用盡。發(fā)生這種情況時(shí),WCF 會(huì)向應(yīng)用程序事件日志中寫(xiě)入一個(gè)錯(cuò)誤。該錯(cuò)誤的內(nèi)容聲明未加載性能計(jì)數(shù)器,并聲明一個(gè)包含異常“System.InvalidOperationException:可用于自定義計(jì)數(shù)器文件視圖的內(nèi)存不足?!钡捻?xiàng)。如果在錯(cuò)誤級(jí)別啟用了跟蹤,此故障也將被跟蹤。如果性能計(jì)數(shù)器內(nèi)存已用盡,在啟用性能計(jì)數(shù)器的情況下繼續(xù)運(yùn)行您的 WCF 應(yīng)用程序可能會(huì)導(dǎo)致性能明顯下降。如果您是計(jì)算機(jī)管理員,則應(yīng)對(duì)計(jì)算機(jī)進(jìn)行配置,以便分配足夠的內(nèi)存來(lái)支持隨時(shí)可能存在的最大數(shù)量的性能計(jì)數(shù)器。有關(guān)更多信息,請(qǐng)參見(jiàn) performanceCounters(可能為英文網(wǎng)頁(yè))。

可以在注冊(cè)表中更改 WCF 類(lèi)別的性能計(jì)數(shù)器的內(nèi)存量。為此,需要向以下三個(gè)位置添加名為 FileMappingSize 的新 DWORD 值,并將它設(shè)為所需的值(以字節(jié)為單位)。重新啟動(dòng)您的計(jì)算機(jī)以使這些更改生效。

HKLM\System\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0\Performance

HKLM\System\CurrentControlSet\Services\ServiceModelOperation 3.0.0.0\Performance

HKLM\System\CurrentControlSet\Services\ServiceModelService 3.0.0.0\Performance

當(dāng)釋放的大量對(duì)象(例如 ServiceHost)等待進(jìn)行垃圾回收時(shí),PrivateBytes 性能計(jì)數(shù)器將記錄一個(gè)非常大的數(shù)字。若要解決此問(wèn)題,可以添加特定于自己的應(yīng)用程序的計(jì)數(shù)器,或使用 performanceCounters 屬性?xún)H啟用服務(wù)級(jí)別計(jì)數(shù)器。

WCF性能計(jì)數(shù)器的類(lèi)型

性能計(jì)數(shù)器可分為三個(gè)不同級(jí)別:服務(wù)、終結(jié)點(diǎn)和操作。

可以使用 WMI 檢索性能計(jì)數(shù)器實(shí)例的名稱(chēng)。例如,

通過(guò) WMI Service實(shí)例的“CounterInstanceName”屬性可獲得服務(wù)計(jì)數(shù)器實(shí)例的名稱(chēng)。

通過(guò) WMI 終結(jié)點(diǎn)實(shí)例的“CounterInstanceName”屬性可獲得終結(jié)點(diǎn)計(jì)數(shù)器實(shí)例的名稱(chēng)。

通過(guò) WMI 終結(jié)點(diǎn)實(shí)例的“GetOperationCounterInstanceName”方法可獲得操作計(jì)數(shù)器實(shí)例的名稱(chēng)。

有關(guān) WMI 的更多信息,請(qǐng)參見(jiàn)使用 Windows Management Instrumentation 進(jìn)行診斷。

服務(wù)WCF性能計(jì)數(shù)器

服務(wù)性能計(jì)數(shù)器將服務(wù)行為作為整體來(lái)進(jìn)行衡量,可用于診斷服務(wù)整體性能。如果使用性能監(jiān)視器查看,可以在 ServiceModelService 3.0.0.0 性能對(duì)象下找到服務(wù)性能計(jì)數(shù)器。使用以下模式命名計(jì)數(shù)器實(shí)例:

ServiceName@ServiceBaseAddress服務(wù)范圍內(nèi)的計(jì)數(shù)器是從終結(jié)點(diǎn)集合中的計(jì)數(shù)器聚合來(lái)的。

創(chuàng)建新的 InstanceContext 時(shí),用于創(chuàng)建服務(wù)實(shí)例的性能計(jì)數(shù)器將遞增。請(qǐng)注意,即使在(通過(guò)現(xiàn)有服務(wù))收到非激活消息時(shí),或在從一個(gè)會(huì)話連接到實(shí)例、結(jié)束會(huì)話然后從其他會(huì)話重新進(jìn)行連接時(shí),也將創(chuàng)建新的 InstanceContext。

終結(jié)點(diǎn)性能計(jì)數(shù)器使用終結(jié)點(diǎn)性能計(jì)數(shù)器可以查看反映終結(jié)點(diǎn)如何接受消息的數(shù)據(jù)。使用性能監(jiān)視器查看時(shí),可在 ServiceModelEndpoint 3.0.0.0 性能對(duì)象下找到終結(jié)點(diǎn)性能計(jì)數(shù)器。使用以下模式命名計(jì)數(shù)器實(shí)例:

(ServiceName).(ContractName)@(endpoint listener address)數(shù)據(jù)與為單個(gè)操作收集的數(shù)據(jù)類(lèi)似,但它只在終結(jié)點(diǎn)之間聚合。

終結(jié)點(diǎn)范圍內(nèi)的計(jì)數(shù)器是從操作集合中的計(jì)數(shù)器聚合來(lái)的。

注意:

如果兩個(gè)終結(jié)點(diǎn)具有相同的協(xié)定名稱(chēng)和地址,它們將映射到同一個(gè)計(jì)數(shù)器實(shí)例中。

操作WCF性能計(jì)數(shù)器

如果使用性能監(jiān)視器查看,可以在 ServiceModelOperation 3.0.0.0 性能對(duì)象下找到操作性能計(jì)數(shù)器。每個(gè)操作都有一個(gè)單獨(dú)的實(shí)例。也就是說(shuō),如果給定的協(xié)定具有 10 個(gè)操作,則有 10 個(gè)操作計(jì)數(shù)器實(shí)例與該協(xié)定相關(guān)聯(lián)。對(duì)象實(shí)例按下面的模式命名:

(ServiceName).(ContractName).(OperationName)@(first endpoint listener address)使用此計(jì)數(shù)器可以衡量調(diào)用的使用方式以及操作的執(zhí)行情況。

當(dāng)計(jì)數(shù)器在多個(gè)范圍內(nèi)可見(jiàn)時(shí),從范圍的較高一級(jí)收集到的數(shù)據(jù)會(huì)與從范圍的較低一級(jí)收集到的數(shù)據(jù)相聚合。例如,終結(jié)點(diǎn)處的 Calls 表示終結(jié)點(diǎn)內(nèi)所有操作調(diào)用的總和;服務(wù)處的 Calls 表示對(duì)服務(wù)內(nèi)所有終結(jié)點(diǎn)的所有調(diào)用的總和。

注意:

如果一個(gè)協(xié)定上有兩個(gè)操作名稱(chēng),則只能為這兩個(gè)操作獲取一個(gè)計(jì)數(shù)器實(shí)例。


本文題目:WCF性能計(jì)數(shù)器應(yīng)用特點(diǎn)介紹
本文路徑:http://www.dlmjj.cn/article/djcjidc.html