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 以启动该工具。