[KB 105883功能解说] 批次服务器任务越来越多地出现ECONNRESET错误
[b]* 本文由赛捷软件(上海)有限公司翻译完成,未经授权不得转载。如需转载,请先联系相应版块的版主取得授权。[/b]创建日期: 07-14-2020
最后修改日期:11-18-2020
发布日期:08-17-2020
适用范围:批次、记录、过账 > 处理
[b]问题概要[/b]
批次服务器任务间歇性地出现ECONNRESET错误。
例如,在批次服务器日志文件中查看一个失败的任务(RQT*.tra),你可以看到以下文本:
#<AdxVL>@(#)%I% Batch query log FUNAUTINVD
<0001 05-28-20 09:02:32 ERROR : read ECONNRESET (10001)
[b]原因[/b]
对于在不同服务器上使用X3 Runtime服务和Syracuse服务的客户,标准的Windows TCP设置可能不适合网络负载和性能。
[b]解决方法[/b]
这是一些有望改善这种情况的Windows注册表更改。你应该验证建议的值,以确保它们适合你的特定设置。
需要在双方通信通道(Sage X3 runtime主机和Sage X3 Syracuse主机)上执行以下Windows注册表更改
警告:手动编辑Windows注册表是危险的,可能会对你的Windows服务器产生重大的负面影响。请确保你在TEST服务器上测试这个过程,并确保你有所有实施这些更改内容的服务器的完整备份。
1. 以管理员用户身份启动Windows注册表编辑器
2. 转至HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
3. 将以下三个注册表键创建或编辑为DWORD:
键名称 建议值(单位) 说明
KeepAliveTime 600000(毫秒=10分钟) 发送keepalive数据包的频率。应小于网络设备的切换时间(一般为1或2小时)。一般来说,几分钟(但不低于2分钟)是最好的折中值。
KeepAliveInterval 30000(毫秒=30秒) Keepalives重试之间的延时,应小于KeepAliveTime。
TcpMaxDataRetransmissions 5(个) 连接失败前的最大keepalive#重试次数。
[b]请注意:[/b]
——这些更改需要重启服务器才能生效。
页:
[1]