2014-10-22 29 views
0

有一个Java应用程序,该应用程序对执行某些sql查询的ruby应用程序进行http调用,并且如果成功,则返回http响应200到java应用程序,我的问题是ruby应用程序需要花费5分钟以上才能完成执行,同时在接近3分钟后检查java应用程序的日志,并将其作为网关超时异常。如何解决此问题?如何通过增加http响应时间来避免网关超时异常

的Java HTTP调用Ruby应用程序:

GetMethod get = new GetMethod(URL to ruby application); 

    Exception exception = null; 
    try { 
     // Get HTTP client 
     HttpClient httpclient = new HttpClient(); 
     int resultCode = httpclient.executeMethod(get); 

     // Display status code 
     if (log.isInfoEnabled()) { 
      log.info("response status code: " 
        + resultCode); 
      // Display response 
      log.info("Response body: " + get.getResponseBodyAsString()); 
     } 
     if (resultCode != 200) { 
      log.error("Failed with status code: " 
        + resultCode); 
      log.error("Response body: " + get.getResponseBodyAsString()); 
     } 

    } 

回答

0

您可以使用this response改变超时......因为没有人发送请求,并等待5分钟,在回答 某处有问题,架构应用。

如果请求的所有参数都正常(因此可以完成查询)并且结果准备好(5分钟后),则可能应该发送请求并返回“200”(OK)东西:

a。在服务器和客户端之间使用套接字连接并将结果发送给客户端。 b。更有用:发送推送通知和结果(不要忘记,今天您可以在推送通知中加载4k数据。

相关问题