金蝶云星空 - 超时设置

说明:
星空系统有很多地方有超时参数设置,如若碰到超时异常时,需要 首先考虑优化设计以及程序逻辑以达到超时要求之内,如若现实业务场景需要且已无法优化时才考虑适量调整超时设置以解决超时异常问题。
场景:
一、事务超时
现象:当报错的提示中有“事务超时”或“Transaction time out”字样时就说事务超时了。

说明:事务超时需要修改应用服务器上的服务器的配置,系统默认的事务超时时间是10分钟,如果客户数据量很大,然后一个事务里10分钟都处理不完的情况下就会报事务超时的错误了,这个时候就需要调整事务超时的时间。
(修改事务超时时间:http://blog.csdn.net/lazyleland/article/details/7988622)
设置:machine.config(默认应该在C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config中),比如设置为1个小时(可以满足绝大多数客户的使用):
<configuration>
<system.transactions>
<machineSettings maxTimeout="01:00:00" />
</system.transactions>
</configuration>
需要注意的是,system.transactions应该放在configSections节点之后,否则程序启动时会报“无法识别的配置节 system.transactions”。
修改后配置如下图红框所示:

注意:如果有多台应用服务器,则每台都要做相同的配置修改处理。修改后要重启iis。
二、数据库超时
现象:数据库超时一般出现下面几种错误返回:
1. System.InvalidOperationException: 超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
2. 在向服务器发送请求时发生传输级错误。 (provider: TCP Provider, error: 0 - 由于系统缓冲区空间不足或队列已满,不能执行套接字上的操作。)
3. 已成功与服务器建立连接,但是在登录前的握手期间发生错误。 (provider: SSL Provider, error: 0 - 等待的操作过时。) ---> System.ComponentModel.Win32Exception (0x80004005): 等待的
金蝶云星空 - 超时设置
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



