WCF Web Service 连接超时的问题

zqs1002 2011-09-22 09:06:00
在Server 2003的IIS上发布了一个WCF服务用于访问实时数据库,
单个调试时一切正常,当有100个线程同时调用时,会出现如下错误:
请求通道在等待 00:01:00 以后答复时超时。增加传递给请求调用的超时值,或者增加绑定上的 SendTimeout 值。分配给此操作的时间可能已经是更长超时的一部分。


我的web.config文件如下
<?xml version="1.0" encoding="utf-8"?>
<configuration>

<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->
<serviceMetadata httpGetEnabled="true"/>
<!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
<serviceDebug includeExceptionDetailInFaults="false"/>
<!--maxConcurrentCalls:最大并发数,默认为16
  maxConcurrentInstances:最大实例数,默认为2147483647
  maxConcurrentSessions:最大的会话数,主要针对于PerSession的情况,默认为10-->
<serviceThrottling maxConcurrentCalls="10000" maxConcurrentInstances="2147483647" maxConcurrentSessions="10000" />
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>

</configuration>


应该不是实时数据库的问题,实时数据库的连接数理论上是无限的。服务器配置有4颗CPU,16G内存,应该也不是服务器的问题。
在Google搜索了很多解决方案,还是不能解决问题,大家帮帮忙,
...全文
320 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
trentliu 2011-09-22
  • 打赏
  • 举报
回复
<serviceThrottling maxConcurrentCalls="10000" maxConcurrentInstances="2147483647" maxConcurrentSessions="10000" />

你这个设置没有任何意义,根本用不了这么大的数值,默认参数应付上百并发也不会有多大问题


1.优化你的wcf

2.设置 WCF Binding 中 OpenTimeout, CloseTimeout, SendTimeout, ReceiveTimeout
<netTcpBinding> timeout 属性
如果是其它类型绑定,你也可以加上类似设置
zqs1002 2011-09-22
  • 打赏
  • 举报
回复
没有人知道吗,等高手出现。
zqs1002 2011-09-22
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 builderc 的回复:]
<serviceThrottling maxConcurrentCalls="10000" maxConcurrentInstances="2147483647" maxConcurrentSessions="10000" />

你这个设置没有任何意义,根本用不了这么大的数值,默认参数应付上百并发也不会有多大问题


1.优化你的wcf

2.设置 WCF Binding 中 O……
[/Quote]

正在对WCF方面进行优化,明天再试一下。更改OpenTimeout, CloseTimeout, SendTimeout, ReceiveTimeout是治标不治本,个人感觉默认的1分钟够了,先前的单线程GSOAP Service也不用1分钟。

110,529

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧