Skip to content

adexcell/image-processor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ImageProcessor — очередь фоновой обработки изображений

Сервисы, где пользователи загружают изображения, встречаются повсюду: соцсети, маркетплейсы, фотогалереи, блоги, редакторы и т.д. Чтобы изображения отображались корректно и быстро — под каждую задачу нужны свои версии: миниатюры, уменьшенные копии, варианты с водяными знаками и пр. Обрабатывать их синхронно — долго и неудобно, особенно при высокой нагрузке.

В этом задании вам нужно реализовать сервис, который принимает изображения, кладёт задачу на обработку в очередь (через Apache Kafka), и уже в фоне обрабатывает файл (например, делает resize или ставит watermark). Такая архитектура позволяет не блокировать пользователя и обрабатывать изображения параллельно, масштабируемо и гибко.

Требования Сервис должен поддерживать:

встроенные HTTP-методы: – POST /upload — загрузка изображения на обработку; – GET /image/{id} — получение обработанного изображения; – DELETE /image/{id} — удаление изображения.

фоновую обработку изображений: – ресайз – генерация миниатюры – добавление водяных знаков;

хранение исходных и обработанных изображений в отдельном файловом хранилище;

добавьте простой веб-интерфейс, на любых технологиях — даже на HTML + JS без фреймворков, где можно: – загрузить изображение через форму (); – посмотреть статус обработки (например, отображать заглушку «в обработке»); – получить готовый результат и отобразить его на странице; – удалить изображение.

Визуально достаточно одного экрана, где отображаются загруженные изображения и их состояние.

Дополнительно (будет плюсом):

поддержка нескольких форматов обработки (jpg, png, gif)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published