.net - WCF的内部限制是什么

标签 .net wcf networking performance

WCF 对其施加了许多限制,以防止 DoS 攻击和其他开发人员的愚蠢行为。这些限制是什么?它们如何被覆盖?

具体来说,如果我要尝试在短时间内向各种不同的客户端发送大量消息,那么它们可能会导致消息发送缓慢的内部 WCF 限制是什么。

PS:这个问题是我的 previous question 的一个更短的版本这并没有得到太多关注。

编辑
我已回复 original question .问题是我的异步调用变成了同步调用。

最佳答案

可能涉及的变量太多,我觉得这个问题太笼统而无法回答。您可能想要检查的一些内容是:

  • ServiceThrottlingBehavior它允许您限制并发调用、实例和 session 的数量
  • The service behaviour MaxObjectsInGraph property
  • The MS patterns and practices WCF security Q&A

  • 但是,由于安全性是一个非常复杂的主题,并且正确处理很重要(它仅与最弱的链接一样强大)并且 WCF 有如此多的不同选项、配置属性等......获得一些书籍并真正获得 aquinted 将是明智的与内脏。

    我个人可以推荐Programming WCF 2nd editionLearning WCF: A hands-on guide

    阅读您之前的问题后,我还建议您尝试进行跟踪。 WCF 记录了很多关于内部发生的事情以及何时达到某些限制的信息。见 http://msdn.microsoft.com/en-us/library/ms733025.aspx有关如何配置它的更多信息。请特别注意 XmlWriterTraceListener 如何不是线程安全的并且可能会阻塞执行流程并且这会严重影响性能(在调试性能时不是您想要的)以及如何克服这一点的部分。

    最后,我认为 John Saunders 的建议非常有效,如果您确实从一个简单的示例开始并且没有遇到此问题,那么我建议您以小增量(或以二进制类型的方式)重新添加当前的功能以查看是什么导致了这个问题。

    关于.net - WCF的内部限制是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1386931/

    相关文章:

    c# - 如何在 .razor.cs 文件后面注入(inject) blazor 代码?以 IJSRuntime 为例

    c# - .Net Release 构建工作速度比 Debug 慢

    .net - Visual Studio项目文件中ProjectTypeGuids标签的意义是什么

    c# - 如何从类库进行通信

    WCF - SSL 服务

    .net - Windows Server 2008 R2上的WCF .NET 4.5

    wcf - 将 WCF REST 4.0 部署到 XP IIS 5?

    c - 单独发送/接收数据

    c++ - inet_pton是做什么的?我不应该获取我的IP地址,而是十进制吗?

    java - 不可序列化对象 - 网络