如何修复由于Apache Tomcat 7.0引起的套接字接收超时错误?

时间:2015-01-31 14:10:40

标签: java apache sockets tomcat7 marklogic

我正在MarkLogic中集成java代码,使用MLJAM将一些EBCDIC文件转换为ASCII。 Apache Tomcat 7.0被用作服务器。代码对于小文件运行良好,但对于大量文件处理,MarkLogic会抛出错误:

  

SVC-SOCRECV:xdmp:http-post(“http://10.76.81.81:8080/mljam/mljam/local/eval”,adminadmin) - 套接字接收错误:等待10.78.14.16:63085-10.76.81.81:8080:超时(decodeResponseLine1)

根据我的理解,我需要增加Apache服务器的socket receive timeout period。如果我没有错,请指导如何做的步骤。

1 个答案:

答案 0 :(得分:0)

我认为这可能是MarkLogic应用服务器的套接字接收超时:https://docs.marklogic.com/admin-help/xdbc-server

要调整它,请转到端口8001上的管理服务器。在您的情况下,我猜它是http://10.76.81.81:8001。找到端口8080的XDBC服务器并打开其“配置”选项卡。使用提示文本“请求套接字recv超时,以秒为单位”查找“请求超时”。它可能设置为默认值,30秒。你会知道新的价值应该是什么,但我会尝试将它加倍到60秒。更改值,然后单击表单顶部或底部的“确定”按钮。

您也可以使用https://docs.marklogic.com/admin:appserver-set-request-timeout API函数执行此操作。