寻找最佳WCF配额设置

时间:2011-04-04 17:34:09

标签: wcf quota maxreceivedmessagesize

我知道,我的问题有点不合理,但你会说WCF配额的“最佳”设置,例如: MaxReceivedMessageSize等。?

我的服务主要返回小值,但有时返回值超过默认配额。还有更大的返回值,我将其作为流返回到第二个端点。

现在,我认为MaxReceivedMessageSize的默认值(毫无疑问,流端点使用更高的值;我的问题涉及缓冲通信)是65536字节。有很多“教程”只是将这个值设置为Int32.MaxValue,这根本不是一个好主意;) 那么你觉得呢?哪些值是可行的,但也足够安全,不会使您的服务容易受到DoS和其他内容的影响?

此致

1 个答案:

答案 0 :(得分:0)

Vialbe值实际上取决于您期望的数据大小。如果您知道有时可以获得高达256KB的值,则将值设置为256KB。在内部服务的情况下,限制可能设置为Int32.MaxValue,但我认为更多的是关于对传输数据做出假设的懒惰。对于公共网络服务,您很难将值设置为Int32.MaxValue,因为任何人都可以炸毁您的服务器。

顺便说一下。如果我们正在谈论从服务返回的数据,那么这个决定是在客户端上 - 配额和MaxReceiveMessageSize目标接收消息不发送消息,所以如果您的服务返回数据以响应客户端的请求,则将设置限制客户端。例如,在公共Web服务的情况下,您没有您控制的所有客户端,因此您还必须考虑要返回多少数据。

单独的端点是客户端和服务器端的单独配置。