Каковы недостатки более длинных путей / имен каталогов и URL на сайте LAMP? - PullRequest
0 голосов
/ 30 июля 2011

Каковы недостатки более длинных путей / имен каталогов и URL-адресов на сайте LAMP?

Я пытаюсь организовать изображения на своих сайтах максимально эффективно, и я стремлюсь использовать много вложенных каталогов, чтобы ни один подкаталог не содержал более 1000 подкаталогов.

В худшем случае изображения будут храниться в следующем виде:

./images/76/543/7654321/640/1.jpg

Есть ли серьезные недостатки в наличии такого количества подкаталогов по сравнению с чем-то более простым, как это:

./i/a7/c3/5e.jpg

Я полагаю, что чем больше подкаталогов нужно скопировать на сервере, тем дольше он будет занимать, и чем длиннее структура каталогов, тем длиннее будет URL, и тем больше места будет занимать HREF HTML документ. Но насколько это изменится? Допустим, мы масштабируемся до миллионов пользователей, нужно ли это принимать во внимание (структура короткого каталога или структура длинного каталога)?

Для контекста, пожалуйста, просмотрите this .

спасибо!

1 Ответ

0 голосов
/ 30 июля 2011

Наличие большого количества файлов в одном каталоге может замедлить работу. Вы правы разделить это. Однако вы можете попытаться уменьшить длину, используя все буквенно-цифровые символы в именах путей.

Если бы у вас было:

/images/[a-z0-9]{3}/[a-z0-9]{3}/[a-z0-9]{3}.jpg
/images/abc/def/ghi.jpg

С учетом вышеизложенного вы можете хранить 101559956668416 изображений. Это кажется смешным, так что, возможно, что-то вроде:

/images/[a-z0-9]{2}/[a-z0-9]{2}.jpg
/images/ab/cd.jpg

С учетом вышеизложенного вы можете хранить 1679616 изображений. Это разумное число, но может быть недостаточно для ваших нужд. Так как насчет этого:

/images/[a-z0-9]{2}/[a-z0-9]{2}/[a-z0-9]{2}.jpg
/images/ab/cd/ef.jpg

Это позволяет использовать 2176782336 (2 миллиарда) изображений, и в каждом каталоге будет максимум 1296 дочерних файлов / каталогов.

Смешайте несколько заглавных букв и, возможно, даже некоторые символы, и вы сможете получить еще меньше. Лично я бы пошел с последним вариантом, хотя. Кажется, это хороший баланс.

...