poiuty

Рейтинг
144
Регистрация
16.03.2009
netwind:
poiuty, если часть данных программы уходит в своп, то когда данные вновь понадобятся, обратный процесс зачастую слишком медленный. Это может вызвать резкое повышение числа обрабатывающих потоков, что в свою очередь вызовет уменьшение памяти доступной под файловый кеш.
Конечно, случаи бывают разные, но для LAMP попадание данных httpd и mysql в своп скорее нехарактерно. Без свопа системы LAMP, как правило, ведут себя стабильнее и отзывчивее.
Ситуации, когда памяти не хватает вообще, лучше исключать с помощью ограничения числа обработчиков httpd и mysql. Опять же, состояние файлового кеша тоже сохраняется.

LAMP серваки со swap работают отлично.

Если свопается, то отследить это можно по iotop -> SWAPIN или же по munin(swap in/ out).

И обычно это происходит, когда реально не хватает оперативки.

mod_fcgid: HTTP request length 132416 (so far) exceeds MaxRequestLen (131072), referer: http://www.xxx.ru/wp

Нужно увеличить MaxRequestLen, тоже в fcgid.conf

Остальное - тут обсуждение

http://forum.ispsystem.com/ru/showthread.php?t=7576

Для начала стоит посмотреть логи

netwind:
Оптимизация реальных систем сложнее чем просто взять и сложить два числа. Все параметры находятся в сложной взаимосвязи друг с другом.

Переписка из багтрекера на тему swap и vswap

A page laying in the swap is not a problem itself, it was put there when kernel decided that this page is touched too seldom and it's more efficient to that space for cached memory which is touched more often.

1) do you have permanent swapin/swapout? If no, i please explain why do you think the kernel decides incorrectly to put some page to the swap and use freed space for cache.

2) you did not answer my question: at what point, under what conditions, do you think system should start using swap (does not matter - virtual or not)?

Under "start using swap" i mean - put some page to the swap.

If you chose the answer "when the system does not have neither a single free page, nor a single cached page", that will be a very-very slow system.

Just imagine:
you have a node(or CT,does not matter) with 1Gb RAM and 1Gb swap.
you run a process which loads 999Mb of data to RAM and later use only 1Mb of RAM, but for its work reads and writes files.

a) your ideal behavior: all 999Mb of completely unused data are still in RAM, no swap is used, no RAM for caches at all, any file read requires real disk operation, which is slow.

b) better behavior: some of unused 999Mb (or all of it!) is swapped out, and freed RAM is used for file caches => file reads do not require real disk access => the node is fast.

Konstantin Khorenko OpenVZ

С чем именно вы не согласны? И почему вы рекомендуете

на современных серверах своп лучше не использовать вообще.
netwind:
poiuty, как вам угодно. А у меня все наоборот.

Не как мне угодно. А как есть на самом деле.

Например

# free -m
total used free shared buffers cached
Mem: 15808 15662 146 0 237 6598
-/+ buffers/cache: 8826 6982
Swap: 8191 2033 6158

Если бы swap был выключен, то дополнительно 2033 ушли в оперативку. В этом случае, меньше осталось под cached.

Ваши аргументы или конкретный пример?

netwind:
Наоборот, под файловый кеш в итоге будет больше оперативки.

Если отключить swap - будет использовать больше ram.

В этом случае - будет меньше ram на кеш.

netwind:

Более того, на современных серверах своп лучше не использовать вообще.

Чтобы под файловый кеш оставалось меньше оперативки?)

vip-moto:
прописал
memlock

теперь оперативу стал жрать в 2 раза больше. До включения свопа жрал 260, после включения свопа 150 и в свопе 70 метров. А щас в свопе 5 метров и 450 метров жрет оперативы

memlock - это когда mysql сразу "забирает" себе оперативку. В зависимости от конфига. Чтобы потом не свопаться.

Glueon:
Это требует запуска mysql с правами root?

нет (10 символов)

добавить в my.cnf

memlock
Всего: 1077