Нужно ли подменять память на моем CentOS vps?
Нужна ли память подкачки для моего Centos VPS?
Повысит ли это производительность и если да, то как мне ее настроить?
Я нашел эту ссылку ( http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-swap-adding.html), но она показывает три способа настройки подкачки памяти. Я не уверен, какой мне нужен.
Изображение (недостаточно репов для встраивания): http://s15.postimage.org/manb5yu6j/Capture.png
4 ответа
Своп выгоден, потому что он позволяет записывать неактивные блоки памяти на диск, освобождая реальную память для таких вещей, как кеширование файловой системы. Обмен также (в некоторой степени) защищает вас от коротких всплесков спроса на память. Linux (по умолчанию) сверх фиксирует реальную память, полагаясь на тот факт, что большинство приложений запрашивают больше, чем им нужно, но если им всем вдруг понадобится, то подкачка памяти может защитить вас от сбоев приложений.
Долгосрочное использование подкачки вместо реальной памяти может снизить производительность, но в краткосрочной перспективе подкачка может повысить производительность и защитить от некоторых сценариев сбоев. Я бы работал без обмена только в нескольких очень ограниченных ситуациях.
Не зная, как настроен ваш VPS, нелегко предложить, какой метод использовать для добавления подкачки, однако мой опыт работы с VPS в целом заключается в том, что ваше дисковое пространство уже разделено, поэтому я бы использовал вариант 3 (который создает обычный файл), это менее эффективно, чем использование логического тома, но я не знаю, можете ли вы создать какой-либо на своем VPS. Вариант 1 полезен только для расширения существующего свопа, которого у вас явно нет.
Если вы арендовали виртуальную машину с использованием контейнеров Parallels Virtuozzo/OpenVZ, у вас не может быть места подкачки. Эта технология не позволяет контейнерам иметь собственное пространство подкачки, так как все контейнеры используют общее ядро. Поэтому только хост может иметь пространство подкачки.
По иронии судьбы, новейшая версия OpenVZ имеет фальшивую функцию подкачки, называемую VSwap, которая вместо того, чтобы фактически предоставлять вашему контейнеру реальное пространство подкачки, дает ему фальшивое пространство подкачки, которое, если ваш контейнер использует его, замедляет ваш контейнер, чтобы симулировать снижение скорости использования своп. И, конечно, вы также получаете дополнительное замедление, если хост-компьютер начинает обмениваться, потому что он переподписан...
Подкачка памяти входит в картину, если вы исчерпали нормальное использование памяти. Допустим, вы выбрали 1 ГБ ОЗУ. Если запущенное приложение потребляет 1 ГБ памяти, то появляется изображение SAWP-памяти. Оно действует как виртуальное ОЗУ еще на 512 МБ или 1 ГБ.
Добавление подкачки памяти не сделает это быстрее, но позволит вам запускать больше приложений.
Если ваши приложения начинают использовать достаточно памяти для использования подкачки, ваша система значительно замедлится, но, по крайней мере, не выйдет из строя, что в конечном итоге произойдет, если у вас закончится ОЗУ.
Похоже, у вас есть 5 ГБ оперативной памяти, в этом случае я бы рекомендовал использовать файл подкачки 2 ГБ.
Еще одна вещь, которую стоит учесть, вы используете VPS, который обычно имеет плохой дисковый ввод-вывод (в зависимости от ваших соседей), поэтому обмен, вероятно, будет даже медленнее, чем на выделенной машине.