Как сервлет Jetty может отправить большой файл размером около 100 МБ без «Сброс соединения по пиру»? - PullRequest
0 голосов
/ 12 июня 2019

Я выполняю REST-сервис с Jetty 9.4.6.Одна из конечных точек создает большой список размером около 100 МБ.

Я попытался поразить конечную точку с помощью wget, и у меня было много

2019-06-11 14:39:27 (11.6 MB/s) - Read error at byte 3246452 (Connection reset by peer).Retrying.

Наконец, я смог получить весь список с помощью wget, но один из моих коллег сообщил, что он не былсмог получить полный список.

Я пытаюсь найти решения для него, и я нашел

Как отправить большие (более 64 КБ) ответы HTTP от сервлета java в пристанисервер?

Согласно сообщению, причина в очень малом времени простоя, но не было решения.

Я был бы очень признателен, если бы кто-то мог показать мне формулу для этого.

Еще одна вещь, я думаю, что это плохое решение, которое я использую out.println(name)

try{
    Connection dbConnection = DriverManager.getConnection(mysqlURL, user, pass);
    PreparedStatement preparedStatement = dbConnection.prepareStatement(query);
    preparedStatement.setString(1,parameter);
    ResultSet rs = preparedStatement.executeQuery();

    final PrintWriter out = resp.getWriter();
    while (rs.next()) {
        out.println(rs.getString("name"));
    }
    out.close();
}

Это может быть одной из причин, почему wget часто получает ошибки при загрузке.

Любые отзывы будут оценены.Спасибо.

...