Oli*_*old 4 wcf
假设您从一个项目公开WCF服务,并使用"添加服务引用"(在本例中为Framework 3.5 WPF应用程序)在另一个项目中使用它.
当您重新实例化ClientBase派生代理时,ClientBase是否会执行底层通道的任何类型的连接池,或者每次都会产生与服务建立连接的全部开销?我特别关注这一点,因为我们使用wsHttpBinding的安全模式="消息".
Dav*_*ter 7
请查看本文,其中介绍了有关如何缓存客户端代理的最佳实践.如果您直接创建代理(MyProxy p = new MyProxy(...)),那么您似乎无法缓存底层的ChannelFactory,这是一个昂贵的部分.但是,如果您使用ChannelFactory创建代理,ChannelFactory则由AppDomain级别的代理缓存,并且它基于您传递给代理的参数(类似于基于连接字符串的连接池).
MyProxy p = new MyProxy(...)
ChannelFactory
本文详细介绍了有关幕后内容的一些细节,但重点是,如果您使用ChannelFactory创建代理而不是直接实例化,则会遇到性能提升.
希望这可以帮助!!
归档时间:
15 年,8 月 前
查看次数:
13395 次
最近记录:
11 年 前