#asp.net-mvc-3 #storage #image-gallery
#asp.net-mvc-3 #Хранение #изображение-галерея
Вопрос:
У меня есть клиент, который хочет создать огромный веб-сайт с галереей изображений, и я не понимаю, как структурировать веб-сайт для будущего расширения хранилища.
Позвольте мне объяснить больше…
Допустим, что каждый пользователь будет загружать свои изображения в
website.com/Uploads/User/Images
Теперь создание логики загрузки и отображение изображений — это не моя проблема, моя настоящая проблема в том, что, скажем, у меня жесткий диск объемом 200 ГБ, и если у меня 20000 клиентов, где каждый клиент загружает максимум 10 МБ, теперь, как вы видите, мне не хватит места.
Итак, как мне справиться с расширением в будущем без изменения структуры веб-сайта, что означает, что пользователи всегда будут загружать по тому же пути, который я упомянул выше, поэтому, очевидно, что мои интерфейсные просмотры также будут извлекать изображения из того же местоположения.
Это может быть глупо, но я запутался в этом. Я имею в виду, как парни вроде Facebook или других крупных сайтов это делают?
Ответ №1:
Вы можете попробовать использовать облачную cdn (сеть доставки контента), которая будет динамически расширяться. amazon / rackspace, они хорошо известны благодаря такого рода сервисам.
Комментарии:
1. не могли бы вы объяснить подробнее, пожалуйста? я имею в виду, как насчет структуры папок, я имею в виду, позволит ли это мне сохранить ту же структуру, о которой я упоминал выше? или я должен изменить пути?
Ответ №2:
Хорошо, после утомительного поиска я нашел ответ, в основном это сводится к двум методам,
Один называется Push, где вы должны хранить файлы на сервере CDN с помощью FTP, API и т.д…
Другой называется Pull Origin, где вам не нужно ничего менять, вы просто настраиваете свой CDN для извлечения ресурсов с ваших серверов, конечно, сначала вы должны сохранить файлы на исходном сервере.
в этом есть намного больше, но если у кого-то возникли те же вопросы, что и у меня, просто выполните поиск о CDN Push или Pull в Google