BonBonSlick
@BonBonSlick
Junior Web Developer Trainee

Как хранить рефернс на статичные файлы когда хост, хранилище может быть изменено?

Условный пример, мини стартап, файлы на локальной машине, идет расширение файлы уходят в облако. Там скорее всего будет изменен не только хост но и весь или частично путь и название к файлу.
Так что смысл хранить в БД ссылку вряд ли имеется, скорее всего генерировать динамически постоянно исходя из названия, формата, хоста. Название проще сохранить чем всю стрюктуру. То есть плюнуть все видео в папку с видео и фото в папку фото, потом искать по названию да и все. Будет что -то вроде FILE_SERVER_HOST + FILE_NAME + FILE_FORMAT

1 - Как сохрнаить референс на файл при его перемещение по разным хранилищам?
2 - когда 2+ серва и на обеих лежит файл, нам надо отдать юзеру файл с сервера который меньше на гружен, откуда брать ссылку на файл?

Речь идет о видео, потом фото, а на последок все остальное.
  • Вопрос задан
  • 44 просмотра
Пригласить эксперта
Ответы на вопрос 1
2ord
@2ord
продвинутый чайник
1. Используя протокол S3 хранить в различных бакетах. Бакет - хранилище. И путь к файлу отдельно. Когда заменяется бакет - заменить все бакеты у файлов (в РСУБД) или ссылки на них, если есть таблица связей.
2. Используется Load balancing. У провайдеров S3 это уже встроено.

Искать по названию в поиске сайта: с помощью полнотекстовых движков. Но структуру путей в хранилище не стоит основывать на названии файлов. Название и прочие мета-данные стоит хранить в СУБД, а название файла лучше использовать для удобства пользования иерархии в хранилище.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы