Отправить отклонённый запрос позже

203
16 мая 2018, 02:40

Внизу приведён код метода. Проблема в том, что когда сервер, отправляющий данный запрос перегружен, то он не может отправить данный запрос. Сильная нагрузка на сервер происходит в течение 2-3 минут, после этого всё стабилизируется. Но данный запрос уже не отправить, потому что данные msg и token уже пропали. У меня есть идея, чтобы использовать Queue для хранения вот таких вот поломанных запросов. И scheduler раз в 5 минут, например, будет снова пытаться повторить данный запрос. Если снова не получается отправить, то тогда снова отправить данный запрос в очередь. Подскажите, хорошая ли это идея использовать очередь? Если да, то могли бы подсказать имплементацию или же какую-нибудь библиотеку, которая поможет разобраться с такой проблемой.

private void callServer(Vertx vertx, String msg, String token) {
    HttpClient httpClient = initClient(vertx); 
    String url = URL; 
    httpClient.post(url, response -> { 
        if (response.statusCode() != 200) { 
            logger.error("bad response");
        }}).setChunked(true)
           .putHeader(HttpHeaders.AUTHORIZATION.toString(),KEY)
            .exceptionHandler(exception -> logger.error("Failed to update: " + exception.getMessage()))
            .end();}
READ ALSO
DAO слой, обработка поля List<> обьекта в JDBC

DAO слой, обработка поля List<> обьекта в JDBC

Делаю ДАО слой, есть классы Student, Teacher, Audience, Group и LectureКласс Group содержит лист обьектов Student, а класс Lecture содержит все эти классы, причем группы...

173
Как правильно заполнить массив?

Как правильно заполнить массив?

Кусок методаИнтересует как на каждое int значение Cell написать условие

206
List&lt;NameValuePair&gt; Java

List<NameValuePair> Java

Пишу приложение по примеруВ примере используется список для хранения пар значений:

200