S3-хранилище, файлы из чата попадают в корень бакета, а не в каталог, определённый параметром ...
Пара вопросов по S3-хранилищам
Первый вопрос. Файлы из чата попадают в корень бакета, а не в каталог, определённый параметром objectPrefix
# application.yaml
s3:
enabled: true
endpoint: ep
region: r
accessKey: ak
secretKey: sk
bucketName: our-bucket
objectPrefix: our-prefix
Файлы из платформы попадают в каталог our-bucket/our-prefix, это ок
Файлы из чатов попадают в каталог our-bucket, это не то, что мы ожидали
Может, есть смысл добавить ещё один параметр, для каталога с файлами из чатов? Типа, chatsPrefix
Второй вопрос. В одном каталоге нехорошо хранить очень много файлов (больше 10к). Но сейчас Платформа сохранит бесконечное количество файлов, и это с большой вероятностью приведёт к падению производительности S3-хранилища. Как быстрый вариант можно раскидывать файлы по месяцам, например, our-prefix/2025-10, our-prefix/2025-11, ...
Или как-то по-другому, наверняка у вас есть варианты получше

Комментарии
Добрый день. Подготовим ответы на ваши вопросы.
Спасибо за ваши предложения, мы рассмотрим вопрос реализации.
Уточните, пожалуйста, ваши кейсы по-шагам. С какими сложностями вы сейчас сталкиваетесь? Проявляются ли сейчас проблемы производительности?
Сейчас сложностей нет; есть опыт использования S3, в частности minio, который испытывает проблемы, когда кол-во объектов в одном префиксе приближается к 10к. Так было ~1.5 года назад, может в новых версиях этой проблемы нет
Обращении к файлу по ключу (как реализовано на платформе) всегда выполняется за фиксированное время. Это не влияет на на произоводительность.
Платформа никогда не делает
ls bucket/...?Платформе не требуется выполнять
ls bucket/...в практических кейсахОтвет "да, не делает" более конкретен, чем ваше неоднозначное "не требуется"
Мы передали ваши пожелания команде разработки.
На данный момент ведётся работа над следующими задачами:
1. Реализация механизма автоматической ротации файлов в хранилище
2. Реализация отдельный префикс для файлов из месседжера
Остались ли у вас какие-то вопросы?
Не, всё супер 🔥
Спасибо, что dev-team так быстро реагирует на запросы с форума 🙏