Любые ОЗУ, не используемое для программ, используется в качестве дискового кеша. Так что теоретически используется вся оперативная память. Здесь можно найти отличное объяснение: http://www.linuxatemyram.com/
Я возвращаюсь сюда, чтобы ответить на свой вопрос!
Проблема возникает, когда у вас несколько процессоров (не многоядерных), например, 2 процессора с x ядрами
vm.zone_reclaim_mode = 0
исправляет это.
Я не уверен, что здесь проблема. Испытываете ли вы другие проблемы, такие как высокий дисковый ввод-вывод?
Большая часть программного обеспечения не предназначена для использования всей памяти только потому, что может. Вы не упоминаете, какое программное обеспечение веб-сервера вы используете, но большая часть программного обеспечения веб-сервера будет иметь внутренние алгоритмы, предназначенные для удаления объектов из кеша, если они запрашиваются недостаточно часто. У них также есть настраиваемые механизмы, предназначенные для управления объемом ресурсов, которые они потребляют на сервере.
Предполагая, что вы используете Apache, в разделе настройки производительности документации Apache есть раздел о настройке MaxRequestWorkers:
Вы можете и должны контролировать настройку MaxRequestWorkers, чтобы ваш сервер не порождал столько дочерних элементов, что он начинал менять местами. Эта процедура для этого проста: определите размер вашего среднего процесса Apache, просмотрев список процессов с помощью такого инструмента, как top, и разделите его на общую доступную память, оставив место для других процессов.
Если вы используете Apache и если вы Если вы сделали это, то вполне вероятно, что у вас недостаточно запросов для Apache, чтобы оправдать поддержку всех этих рабочих. Также может быть, что ваша оценка количества воркеров слишком занижена, и вы можете увеличить MaxRequestWorkers, чтобы попытаться заставить Apache порождать больше воркеров.
Если у вас нет других проблем, это не похоже на то, что что-то неправильно. Но в любом случае это, вероятно, вопрос / проблема конфигурации программного обеспечения веб-сервера, а не sysctl.
и разделите это на вашу общую доступную память, оставив место для других процессов.Если вы используете Apache и если вы это сделали, то вполне вероятно, что у вас недостаточно поступающих запросов для Apache, чтобы оправдать поддерживая всех этих рабочих. Также может быть, что ваша оценка количества воркеров слишком занижена, и вы можете увеличить MaxRequestWorkers, чтобы попытаться заставить Apache порождать больше воркеров.
Если у вас нет других проблем, это не похоже на то, что что-то неправильно. Но в любом случае это, вероятно, вопрос / проблема конфигурации программного обеспечения веб-сервера, а не sysctl.
и разделите это на вашу общую доступную память, оставив место для других процессов.Если вы используете Apache и если вы это сделали, то вполне вероятно, что у вас недостаточно поступающих запросов для Apache, чтобы оправдать поддерживая всех этих рабочих. Также может быть, что ваша оценка количества воркеров слишком занижена, и вы можете увеличить MaxRequestWorkers, чтобы попытаться заставить Apache порождать больше воркеров.
Если у вас нет другой проблемы, это не похоже на то, что что-то неправильно. Но в любом случае это, вероятно, вопрос / проблема конфигурации программного обеспечения веб-сервера, а не sysctl.
На Apache поступает достаточно запросов, чтобы оправдать поддержку всех этих рабочих. Также может быть, что ваша оценка количества воркеров слишком занижена, и вы можете увеличить MaxRequestWorkers, чтобы попытаться заставить Apache порождать больше воркеров.Если у вас нет других проблем, это не похоже на то, что что-то неправильно. Но в любом случае это, вероятно, вопрос / проблема конфигурации программного обеспечения веб-сервера, а не sysctl.
На Apache поступает достаточно запросов, чтобы оправдать поддержку всех этих рабочих. Также может быть, что ваша оценка количества воркеров слишком занижена, и вы можете увеличить MaxRequestWorkers, чтобы попытаться заставить Apache порождать больше воркеров.Если у вас нет других проблем, это не похоже на то, что что-то неправильно. Но в любом случае это, вероятно, вопрос / проблема конфигурации программного обеспечения веб-сервера, а не sysctl.