HTTPRequest google-http-client завис и тайм-аут в многопоточной среде - PullRequest
0 голосов
/ 01 августа 2020

Я заметил задержку при вызове REST api в многопоточной среде. За одно обращение к сервису я делаю около 40 вызовов REST API с помощью HTTPRequest. Я вижу, что из 40 звонков зависло 5-6 звонков и истекло время ожидания. Когда я вызываю один за другим (не многопоточная среда), я не вижу тайм-аута. ниже мой код не уверен, что здесь не так.

  private final static HttpRequestFactory requestFactory
            = new NetHttpTransport().createRequestFactory();
 public String executeGoogleHttpClient(String url) throws IOException {
        long startTime = System.currentTimeMillis();
        long endTime = 0;
        String jsonResponse = null;
        HttpRequest request = requestFactory.buildGetRequest(
                new GenericUrl(url)); //requestFactory build globally to reuse for entire session
        setHeaders(request.getHeaders());
        jsonResponse = request.execute().parseAsString();
        endTime = System.currentTimeMillis();
        log.info(("Total time took to call google API=" + (endTime - startTime)));
        return jsonResponse;
    }```
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...