Никита Поминов@nickpominov
Java разработчик
Информация
- В рейтинге
- Не участвует
- Откуда
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Дата рождения
- Зарегистрирован
- Активность
Специализация
Backend Developer
Junior
Java
Apache Maven
Spring Boot
Hibernate
PostgreSQL
SQL
Docker
Git
REST
Junit
1) Использование CompletableFuture тоже имеет место быть. Он является более мощным и гибким инструментом и подойдет для работы со сложными асинхронными операциями, где нужно внести дополнительную логику обработки результатов и управления потоками. Однако в моем случае простая асинхронная задача загрузки фотографий, и его использование кажется избыточным. На мой взгляд, Future достаточно для этих нужд, и он проще в использовании.
2) У подобных решений на практике устанавливается ограничение на максимальное количество фотографий, которые пользователь может прикрепить. Как правило это до 10. Поэтому я подразумеваю, что в первую очередь стоит ограничение на фронте, ну и на бэке тоже стоит учесть это ограничение, чего я не сделал, так как проект тестовый.
Поэтому создать количество потоков по количеству фотографий
Executors.newFixedThreadPool(photos.size())будет уместно.Спасибо за совет!