Как заставить 64-битный Apache вести себя как 32-битный?

Мой веб-хостинг предоставляет только 64-битную ОС, но 64-битные веб-серверы Apache занимают слишком много памяти и иногда приводят к перегрузке при не слишком большой внешней нагрузке.

Есть ли способ настроить Apache, чтобы использовать меньше памяти, или вы предлагаете какую-либо другую конфигурацию?

Мой сервер имеет 256 МБ оперативной памяти и работает с одним WordPress и двумя другими поддоменами со статическими страницами.

Текущие конфигурации процесса Apache, показанные Webmin:

Мин процессов: 10

Макс процессов: 15

Количество начальных процессов запуска: 8

Максимальное количество одновременных соединений на процесс: 4000

Обновление:- Сейчас я вижу 11 процессов Apache, каждый из которых занимает около 360 МБ ОЗУ в моей системе 256 МБ!

2 ответа

Решение

Если вы действительно думаете, что это что-то изменит, просто установите 32-битный двоичный файл Apache и модули и запустите его. Это единственный способ "заставить 64-битный Apache вести себя как 32-битный". Это не просто, и кошмар обслуживания, хотя - я не рекомендовал бы это.

Существует множество способов заставить Apache использовать меньше памяти, но вы получаете прирост прироста, и если у вас есть только 256 МБ ОЗУ для игры, вам понадобятся большие изменения - и nginx это тот, который я бы порекомендовал. Он не порождает десятки рабочих, и каждый из 2-4, которые он использует, занимает всего несколько МБ каждый (тот, что передо мной сейчас, работает с дюжиной vhosts, занимает 2448kB резидента).

Это не имеет ничего общего с 32-битным против 64-битного.

Как вы думаете, почему 15 процессов по 60 МБ каждый (только предположение) будут использовать менее 900 МБ памяти при работе на 32-битной архитектуре?

Я бы предпочел запустить некоторые цифры.

  • Сколько памяти занимает каждый процесс
  • Сколько процессов вы хотите / нужно запустить
  • Является ли запуск fcgi с nginx опцией (не то, чтобы apache был плохим, его проще вычислить)?
Другие вопросы по тегам