Я уже пытался найти существующий вопрос для этого, но не смог найти подходящего совпадения.
В рамках процесса развертывания моих общедоступных сайтов я использую символические ссылки для переключения между версиями веб-приложения.
Например, у меня есть vhost abc.com, у которого здесь есть docroot: /var/www/abc.com
Сам docroot (/var/www/abc.com)
символическая ссылка на каталог приложения, доступный через Интернет (/var/www/package/buildX/web)
Когда я развертываю новую сборку, я просто заменяю символическую ссылку другой символической ссылкой на новую сборку.
В вопрос У меня есть вопрос, каковы накладные расходы на производительность (или проблемы, которые у меня должны быть) с использованием символических ссылок для Apache docroot
Первый вопрос: находятся ли все эти файлы в одной файловой системе или на физическом запоминающем устройстве? Если это так, то разницу между прямой ссылкой и символической ссылкой будет почти невозможно обнаружить.
Здесь нужно мыслить порядком. Ваше приложение, вероятно, основано на языке сценариев и базе данных. Эти элементы приложения будут ограничивающим фактором, а не второстепенной функцией файловой системы. Джефф Этвуд лучше всего объясняет это Сообщение блога.
Не беспокойтесь о снижении производительности символических ссылок. Перед этим узким местом будет практически все остальное. Разрешение символической ссылки не требует слишком много циклов процессора; запуск вашего PHP-скрипта, обработка запросов к базе данных и наборов результатов, возможно, с использованием таких модулей, как Apache mod_security, будет настоящим узким местом.
Теоретически вы можете что-то оптимизировать, если все, что обслуживает ваш сервер, представляет собой статический контент; даже в этом случае настройка параметров веб-сервера и / или ядра и масштабирование оборудования - это правильный шаг, а не глупая микро-оптимизация, такая как работа с символическими ссылками. Символические ссылки обеспечивают простой и удобный способ переключения между версиями веб-сайта и т. Д .; используйте их с удовольствием.