【发布时间】:2016-02-28 09:30:43
【问题描述】:
我想知道在使用可靠会话时是否会自动应用服务限制。搜索网页和msdn时找不到明确的答案。
我倾向于认为您必须将<serviceThrottling /> 放在<serviceBehavior /> 元素中才能启用它。
问题是,像 this one 这样的不同博客告诉我你应该注意默认的限制值。
这是我的一般问题,但我也想知道针对我的特殊情况的答案。我的配置当前具有以下行为:
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="false" />
<serviceDebug includeExceptionDetailInFaults="true" />
<dataContractSerializer maxItemsInObjectGraph="2147483647" />
</behavior>
</serviceBehaviors>
</behaviors>
如您所见,我没有包含<serviceThrottling /> 元素。是否仍然启用了节流,还是我成功地阻止了使用此配置进行节流?
编辑:
我刚刚在OperationContext.Current.Channel.ChannelDispatcher.Endpoints.owner.ServiceThrottle 中检查了服务器上的运行时,它的值为空。这使我更倾向于禁用 ServiceThrottling 的想法。
但是,我不太确定这是否是正确的检查路径,我也不确定这是否意味着因为它为空,所以将在某个地方的 WCF 核心中使用一些默认内容。
【问题讨论】:
-
谁能提供一个确认的答案?
标签: wcf default throttling