Я работаю над новой настройкой для «сервера без сохранения состояния», который должен использоваться в качестве узла Apache / Php для доставки содержимого через Интернет.
Моя цель - переместить DocumentRoot и ServerRoot в NFS (это будет EFS - эластичная файловая система на Aws), чтобы у меня было единое сетевое расположение, где будут храниться все мои данные и файлы конфигурации.
Операционная система - Debian Stretch.
При чтении основного конфигурационного файла Apache Debian из коробки я обнаружил следующий комментарий:
НОТА! Если вы собираетесь разместить это в смонтированной файловой системе NFS (или иным образом в сети), прочтите документацию Mutex (доступна по адресу http://httpd.apache.org/docs/2.4/mod/core.html#mutex>); вы избавите себя от множества неприятностей.
Поскольку я не нашел много документации по перемещению Apache ServerRoot, у меня есть несколько вопросов:
Если вы прочтете ниже цитируемый URL, вы увидите, что функция мьютекса используется для многих вещей, включая SSL, для некоторых MPM, для аутентификации и т. Д. Это не имеет ничего общего с операциями записи или нет.
Вы должны либо использовать локальный каталог не через NFS, либо даже tmpfs
, так как это все равно не препятствует перезапуску Apache. В противном случае используйте семафор, например sem
Блокировка мьютекса не требуется для одного сервера, поскольку она в основном предназначена для предотвращения конфликтов записи, но если вы собираетесь масштабировать и потенциально будете записывать любые файлы в вашу общую файловую систему с нескольких серверов, рассмотрите возможность ее использования. Используйте апрель по умолчанию или file://
для большинства целей.