【发布时间】:2012-10-19 10:54:03
【问题描述】:
我有一个多线程应用程序,每天调用同一个服务 200,000 多次。目前它为每个调用实例化一个新的 ClientBase 自动生成的代理。
我可以做些什么来提高性能?实例化一个客户端并共享它?我应该调查异步客户端吗?如果可以,可以共享吗?
【问题讨论】:
-
每天 200000 次通话没什么大不了的。为每个调用请求一个代理非常便宜(WCF 在内部缓存它)。你确定瓶颈在客户端吗?
-
更多信息:调用不是一种方式。他们传递一些参数并取回数据。此外,基本授权被注入到请求头中。
-
首先你需要明确你想要达到的目标。您想减少应用程序响应时间吗?允许在同一时间范围内处理更多请求?最小化系统资源使用?您的应用程序是 ASP.NET 站点、Silverlight 应用程序还是 Windows 窗体? “提升性能”是什么意思?
标签: c# wcf .net-4.0 scalability wcf-client