Сотни тысяч изображений на веб-сервере - PullRequest
1 голос
/ 23 ноября 2010

Я начинаю разрабатывать веб-сайт, на котором будет более 500 000 изображений. Помимо необходимости большого дискового пространства, вы думаете, что производительность сайта будет зависеть, если я использую базовую схему папок, например, все изображения в / images?

Это будет слишком медленно, если пользователь запросит /images/img13452.jpg?

Если производительность уменьшается пропорционально количеству изображений в одной папке, какую схему / архитектуру вы рекомендуете мне использовать?

Заранее спасибо, Juan

Ответы [ 2 ]

1 голос
/ 23 ноября 2010

Зависит от файловой системы, зависит от многих других вещей. Однако при обычном подходе хеширование имен файлов и последующее создание подкаталогов ограничивает количество файлов в каждом каталоге и, следовательно, повышает производительность (опять же в зависимости от FS).

Пример:

ab\
  ab.png
  lm\
     ablm.png

cd\
   cd.png
   xo\
      xo.png

Вы также можете поискать SO для получения дополнительной информации по этой теме:
https://stackoverflow.com/search?q=filesystem+performance

0 голосов
/ 23 ноября 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...