首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命名管道回调需要10秒?

命名管道回调需要10秒?
EN

Stack Overflow用户
提问于 2012-01-15 16:39:20
回答 4查看 1K关注 0票数 2

使用客户端和服务器类包装了wcf dll。

当我的服务器使用回调时,我的客户端需要10秒以上的时间才能得到它。

怎么一回事?

仅获得最简单的NetNamedPipeBinding端点。

我有很多代码,所以我不确定要在这里粘贴什么。

是什么导致了这么长的时间。

编辑:仅第一次回调需要10秒。

在此之后,它的工作速度很快。

有人知道为什么吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-05-07 15:32:48

什么都没有用。我最后添加了一个假的呼叫装饰器。它在系统启动时发送第一个调用。

票数 1
EN

Stack Overflow用户

发布于 2012-03-06 19:35:02

我也遇到过类似的问题。这对我的情况很有帮助:

代码语言:javascript
复制
NetNamedPipeSecurity security = new NetNamedPipeSecurity() { Mode = NetNamedPipeSecurityMode.None };

创建绑定时传递此安全对象:

代码语言:javascript
复制
new NetNamedPipeBinding() { Security = security }

最初的想法来自here。这个主题是关于TCP绑定的,但在我的例子中,最后给出的解决方案似乎对命名管道也有帮助。

更简单的做法是:

代码语言:javascript
复制
new NetNamedPipeBinding(NetNamedPipeSecurityMode.None)
票数 2
EN

Stack Overflow用户

发布于 2015-09-05 03:22:05

无意中,我发现了一个可以极大地提高第一个WCF请求性能的设置。时间从> 10秒下降到~2秒。

在服务器和客户端上将绑定的TransferMode属性设置为Streamed:

代码语言:javascript
复制
var binding = new NetNamedPipeBinding(NetNamedPipeSecurityMode.None);
binding.TransferMode = TransferMode.Streamed;

然后将绑定传递到AddServiceEndpoint服务器端和Channelfactory构造器客户端。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8868479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档