А, понятно. Ты изначально упустил важную деталь - загружается в общую кучу и очередь при этом локальная вместе со всем остальным добром. Если загружать на отдельный микросервис (инстансов которого запущено сколько надо), обрабатывающий аплоады (вот прямо по прямому урлу с JWT-токеном), то все эти проблемы отпадают. Тут в большинстве случаев даже можно не париться с локальностью очереди, это не проблема, аплоады будут распределены примерно равномерно за счет балансировки, тупо по очереди + разгребалке на каждый диск (физический или логический, не важно).
А S3 - ну не знаю, почему все его хотят. Видимо, потому что никого не увольняли за покупку IBM^W AWS. Как по мне, уж если хочется AWS, разумнее через CloudFront.