教你啟用WCF性能計數器
WCF經過長時間的發展,它的功能也在逐步的強大,Windows Communication Foundation (WCF) 包含一個大型性能計數器集合,可幫助您衡量應用程序的性能。這里我發表一下個人理解,和大家討論討論。
#T#隨著時代的發展,Microsoft推出的WCF被我們越來越多的人使用,我們就WCF性能分析一下,設計、構建、維護和版本控制分布式應用時一個復雜的任務。安全性、可靠性、事務性和伸縮性的因素和任務變得更加復雜。因為問題的復雜性,所以WCF被設計來解決這些問題,WCF是相當復雜的技術。為了能看清WCF性能,我把主要的功能分為10個類別:獨立版本控制、異步只進消息、平臺統一、安全性、可靠性、事務支持、互操作性、性能、擴展性和配置性。
啟用WCF性能計數器
您可以通過 WCF 服務的 app.config 配置文件啟用WCF性能計數器,如下所示:
- <configuration>
- <system.serviceModel>
- <diagnostics performanceCounters="All" />
- < SPAN>system.serviceModel>
- < SPAN>configuration>
可以將 performanceCounters 屬性設置為啟用特定類型的性能計數器。有效值為
◆All:啟用所有類別計數器(ServiceModelService、ServiceModelEndpoint 和 ServiceModelOperation)。
◆ServiceOnly:僅啟用 ServiceModelService 類別計數器。
◆Off:禁用 ServiceModel
◆性能計數器。這是默認值。
如果要啟用所有WCF性能計數器,則可以將配置設置放置到 Machine.config 文件中。有關在計算機上為性能計數器配置足夠內存的更多信息,請參見“增加性能計數器的內存大小”(可能為英文網頁)一節。還可以在代碼中啟用性能計數器,如下所示:
- using System.Configuration;
- using System.ServiceModel.Configuration;
- using System.ServiceModel.Diagnostics;
- Configuration config = ConfigurationManager.OpenExeConfiguration(
- ConfigurationUserLevel.None);
- ServiceModelSectionGroup sg = ServiceModelSectionGroup.GetSectionGroup(config);
- sg.Diagnostic.PerformanceCounters = PerformanceCounterScope.All;
- config.Save();
查看性能數據
若要查看性能計數器捕獲的數據,則可以使用 Windows 附帶的性能監視器 (Perfmon.exe)。通過轉到“開始”,單擊“運行”并在對話框中鍵入 perfmon.exe 以啟動該工具。