WCF服务行为与绑定设置

5
在WCF中,绑定设置的maxConnections和ServiceBehaviors服务限制设置(maxConcurrentCalls,maxConcurrentInstances,maxConcurrentSessions)之间有什么区别?
我正在尝试设置我的WCF服务,但不确定它们如何协同限制连接。
1个回答

3

有两件事情需要考虑:

  1. serviceThrottling 行为是一个服务端设置,用于确定服务器支持的并发调用、实例和会话数量。这与任何绑定或服务端点无关 - 它是针对整个服务的设置。这允许你调整特定服务可以处理多少并发请求(和/或会话),这取决于诸如服务器“功率”、RAM、CPU 等众多因素。这些值默认情况下保持相当低,以避免服务器被大量请求(不正确或恶意的)“超载”,从而导致其变得无响应。

  2. maxConnections 设置针对 netTcpBinding(及其“堂兄弟”如 netNamedPipe 和各种 Azure 取向的 net***Relay 绑定)和连接池有关。与 ADO.NET 数据库连接一样,与服务器的 TCP/IP 连接可以进行池化和重用,以减少销毁和重新创建它们的开销。这主要是客户端设置(虽然它也会影响服务器端),而且再次强调:它是特定于 netTcpBinding(及其“堂兄弟”;都基于 TCP/IP)的,不存在于其他任何绑定中。

    请参见:有关 MaxConnections 的更多详细信息,了解该设置的深入解析和洞见。


你能详细说明MaxConnections设置对服务器端的影响吗? - Jeremy Rosenberg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接