我正在尝试按照本文使用 netNamedPipeBinding 验证 WCF 性能。 http://msdn.microsoft.com/en-us/library/bb310550.aspx
我有一个 WCF 服务和客户端托管在单个应用程序中。
WCF Host 定义如下:[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, UseSynchronizationContext = false, InstanceContextMode = InstanceContextMode.Single)]
执行 perf 测试的测试调用如下所示:
Stopwatch sw = new Stopwatch();
sw.Start();
int zLoopCount = 1000;
for (int i = 0; i < zLoopCount; i++)
{
int z = zClient.Test(1);
};
sw.Stop();
double zRequestsPerSecond = (double)sw.ElapsedMilliseconds / (double)zLoopCount;
Console.WriteLine(string.Format("Done Making {0} requests \r\n", zLoopCount));
Console.WriteLine(string.Format("{0} ms to make all requests \r\n", sw.ElapsedMilliseconds));
Console.WriteLine(string.Format("{0} ms per objects \r\n", zRequestsPerSecond));
728 毫秒发出所有请求
每个对象 0.728 毫秒
我运行的是相当下降的规格 Intel Gen 3 i5,这相当于每秒远低于 2000 txn,远低于声称的每秒 8000 txn。
有没有什么表现。我应该对开箱即用的配置进行调整。我没有配置任何限制。
谢谢沃里克