休息服务没有响应?

时间:2016-02-02 20:10:25

标签: rest

我有以下代码供rest客户端访问其余服务:

@Override
    public String putDeal(String deal) throws RestException {
        String responseStr = null;
        String restUrl = RestPropertyUtil.getRestUrl();
        STATIC_LOGGER.info("REST restUrl: " + restUrl);
        if (null != deal) {

            HttpEntity<Object> request = new HttpEntity<Object>(deal.getBytes(Charset.forName(UTF8)), getHttpHeaders(false));

            ResponseEntity<String> response = restTemplate.exchange(restUrl, HttpMethod.PUT, request, String.class);
            if (response.getStatusCode() == HttpStatus.OK) {
                responseStr = response.getBody();
            } else {
                STATIC_LOGGER.error("RestException: Request could not be completed successfully.", response.getHeaders().toString());
                throw new RestException("RestException: Request could not be completed successfully.");
            }
        }
        return responseStr;
    }

在50个休息请求中(在12小时内,每个请求大约需要5秒到最多1分钟才能完成),45个从其余服务器返回,剩下5个从未响应。

当我问Rest Service开发人员时,他确认这5个请求来到了他们的服务器(在服务方法开始时从Log验证)但是他没有看到他们的服务出来(在结束时)服务方法)因此没有响应来自其他客户。

您是否认为这需要由其他服务团队进行调查,或者我可以从其他客户端的角度做什么(比如使用HttpClient和RestTemplate实现连接池)可以解决这个问题?

仅供参考:当我从Firefox中的其他客户端插件尝试此服务时,它始终会得到响应。所以我认为这可能与其他客户端代码有关。

0 个答案:

没有答案