У меня есть веб-приложение на Java, где пользователи могут загружать изображения
То, как я закодировал загрузку, использует IOUtils.copy для потока ответов
Но загрузка 4-мегабайтного изображения занимает около 10 секунд, и это происходит очень медленно.
Похоже, сервер отправляет порцию за раз.
это способ записи изображения в выходной поток:
OutputStream out = response.getOutputStream();
FileInputStream stream = new FileInputStream(path);
IOUtils.copy(stream, out);
out.flush();
out.close();
Есть ли более быстрый способ?сделать это?
ОБНОВЛЕНИЕ
следующий код с использованием буфера 1 МБ и copyLarge не вносил никаких изменений.
FileInputStream stream = new FileInputStream(path);
byte[] buffer = new byte[1024 * 1024];
IOUtils.copyLarge(stream, out,buffer );