Назад | Перейти на главную страницу

Есть ли что-нибудь плохое в том, чтобы сделать ваш documentroot tmpfs, если у вас есть лишняя память?

Как говорится в заголовке, меня поражает, что если у меня есть старое веб-приложение mason, которое в основном состоит из нескольких сотен сценариев и компонентов Perl на диске, не будет ли оно работать быстрее, если я сделаю корневой каталог документа tmpfs?

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

apache2 на debian, если это необходимо.

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

Если вы это сделаете, нет никакого смысла кэшировать один и тот же контент в ОЗУ.

Поскольку ваш контент в основном динамический (все эти сценарии perl), большая часть ваших накладных расходов связана с созданием экземпляров рабочих и запуском интерпретатора perl, а также с тем, что делают сценарии perl. Хранение сценариев perl в памяти поможет лишь немного, и Linux (я предполагаю, что вы используете Linux) часто кеширует подобные вещи самостоятельно.

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

Apache определенно не загружает все свое статическое содержимое в оперативную память автоматически при запуске, хотя его можно настроить на кэширование во время выполнения.