OpenVZ Forum


Home » International » Russian » Как ограничить размер Свопа ?  () 1 Vote
Re: Как ограничить размер Свопа ? [message #6532 is a reply to message #6517] Wed, 20 September 2006 05:45 Go to previous messageGo to previous message
vaverin is currently offline  vaverin
Messages: 708
Registered: September 2005
Senior Member
privvmpages -- это вовсе не оперативка. Cогласно документации privvmpages: memory allocation limit. Замечу -- именно allocation, а не потребления, потому что существенную часть запрошенной памяти приложения не используют. Наши измерения показывали что apache не использут 20-30% памяти запрошенной при запуске. В случае multithred application доля неиспользуемой памяти существенно возрастает, иногда они рельнот используют всего лишь 10% запрошенной памяти.

Поэтому в принципе privvmpages можно сопостовлять с объяемом RAM+swap, но чтобы компенсировать неиспользуемую память VE можно отдавать от 1.5 до 4 раз больше privvmpages. Хотя для stability critical application конечно рисковать не стоит, в этом случае лучше не превышать объем RAM+swap.

Да, система сама будет определять что и когда отправлять в swap, а что оставлять в RAM. Однако, поверьте, системе виднее чем вам, она никогда не будет держать RAM свободной, если ее есть чем занять. Обычно на любой работающей ноде почти вся память достаточно быстро забивается разного рода структурами.

Вы хотите чтобы в swap уходили в первую очередь данные относящиеся к VE? Наверное в некоторых случаях это действительно может иметь смысл.
Однако я хочу обратить ваши внимание на следующее обстоятельство: Virtuozzo (да и наверное OpenVz тоже) обычно использутся для хостинга. внутри VE живут клиенты и они очевидно будут недовольны задержками в работе к которым приведет приемущественное сбрасывание их данных в swap. С другой стороны, в VE0 практически никто не живет, она используется только для административных целей. Задач там немного, да и задержка для них не особо критична. Но именно поэтому там нет данных которые стоило бы вытеснить в своп. просто потому что этих данных мало, и заметной пользы ноде это не принесет. Согласитесь, в таком сценарии совершенно неочевидно, стоит ли давать приемущество работы со swap какой либо из сторон.

Кроме того, хочу отметить, в своп вытесняются данные, которые используются _реже_. В свою очередь реже используются данные той VE которой дают _меньше_ _CPU_. Таким образом можно повлиять на работу со swap косвенно, путем назначения адекватных CPUunits. Если вы дадите много CPU ve0 -- она будет чаще работать с данными -- в swap при необходимости будут уходить редкоиспользуемые данные из VE.
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: loop device внутри VPS
Next Topic: SMP kernel не работает
Goto Forum:
  


Current Time: Wed Jul 17 15:39:28 GMT 2024

Total time taken to generate the page: 0.02698 seconds