Имеет ли значение размер приложения при хранении статического контента?
Я планирую хранить HTML-файлы,PDF-файлы и файлы изображений в моем приложении узла в общедоступной папке, а не в каком-нибудь контейнере s3, поскольку b/c i хочет иметь чистые URL-адреса из моего домена вместо s3-URL. со временем мое приложение растет и содержит более 50 000 HTML,PDF и изображений.
Замедляет ли это работу приложения в будущем, так как занимаемая площадь приложения будет огромной или все равно будет работать нормально?
Каковы возможные недостатки хранения огромного количества статического контента в приложении?
2 ответа
Замедляет ли это работу приложения в будущем, так как занимаемая площадь приложения будет огромной или все равно будет работать нормально?
Не имеет значения, если у вас есть 100 КБ или 100 ГБ, хранящиеся локально. Объем данных, хранящихся на локальном жестком диске, не имеет никакого отношения к производительности вашего приложения.
Если вы поместите миллион файлов в один каталог, это может незначительно повлиять на производительность файловых операций в этом каталоге в ОС, но если вы распространяете свои файлы, имея в каталоге не более пары тысяч, это не должно влиять ни на что.,
Объем данных, которые ваше приложение фактически читает и записывает на жесткий диск, во многом зависит от производительности приложения. Итак, если это статические файлы, которые ваш сервер должен обслуживать в большом объеме, и вы сравниваете эту ситуацию с ситуацией, когда файлы размещаются в другом месте и обслуживаются какой-то другой инфраструктурой (например, S3), то это действительно имеет значение. Обслуживание статических файлов - довольно простая операция, поэтому вы всегда можете просто разместить что-то вроде NGINX перед вашим веб-сервером, чтобы при необходимости обрабатывать статические файлы очень эффективно.
Каковы возможные недостатки хранения огромного количества статического контента в приложении?
Предположительно, вы на самом деле не имеете в виду "в приложении", а скорее "на локальном жестком диске". Пока единственный серверный процесс, которому необходимо получить доступ к этим файлам, находится на локальном компьютере, то в этом нет никаких недостатков. Вы должны убедиться, что существует какое-то решение для резервного копирования / резервирования для локального жесткого диска, поскольку оно содержит много важных данных. Хранение данных в таком сервисе, как S3, часто позаботится о резервном копировании и резервировании для вас (или вы можете легко включить такие функции).
Размер приложения оказывает небольшое влияние на его производительность. Есть много других факторов, которые оказывают большее влияние.
Недостатком хранения статического содержимого в приложении является то, что оно не распространяется и плохо масштабируется.