При использовании VPS один из самых важных факторов - доступная Вам оперативная память. Как понять, сколько этой памяти Вам нужно и что это все означает? Попробуем прояснить этот, на самом деле не столь простой вопрос.
Важно! Все нижеописанные проблемы с памятью относятся к VPS, сделанным по старой технологии OpenVZ / Virtuozzo. Проще всего использовать VPS, сделанную по технологии XEN. В этом случае оперативная память VPS ведет себя точно также как на обычном компьютере. Потому что VPS получает просто кусок физической памяти.
Смотрите: отличие XEN от OpenVZ / Virtuozzo и наши XEN VPS.
Ну а для тех кому интересно узнать про проблемы с памятью в старой технологии VPS - читать дальше.
VPS/VDS сервер (по крайней мере, наиболее распространенные его реализации) кардинально отличаются от обычного компьютера подходом к использованию оперативной памяти. На отдельном физическом компьютере легко ответить на вопрос: сколько у Вас памяти. Сколько ее есть на компьютере, столько и есть.
В случае с VPS/VDS память используется совместно сразу несколькими виртуальными серверами. И легко и четко можно ответить на вопрос сколько памяти на сервере хостинга, содержащем Ваш VPS сервер. Чтобы VPS сервер не занял памяти больше, чем ему отпущено, система хостера ограничивает кол-во памяти, которое может выделить конкретный VPS сервер. Обратите внимание: не использовать, а только выделить! В этом и кроется корень различия VPS сервера и обычного компьютера.
Дело в том, что большинство программ выделают себе памяти значительно больше, чем реально используют. Почему - это вопрос отдельный, и больше для программистов. Пользователю VPS достаточно знать, что это так, и что соотношение выделяемой и реально занятой памяти зависит от конкретных используемых программ.
Поэтому, например, MySQL сервер, нормально работающий на обычном компьютере с 64MB памяти, запустится на VPS/VDS, только если сможет выделить себе хотя бы 128MB памяти! Поэтому получается, память на VPS - не совсем то, что память на обычном компьютере.
Как же оно тогда умудряется работать на обычном компьютере на 64MB памяти? Во-первых, часто программа вообще никогда не занимает всю выделенную память (почему - вопрос к ее разработчикам). Во-вторых, если все же займет, на обычном компьютере спасет своп (файл подкачки).
В случае с виртуальным сервером, использовать своп смерти подобно. Дело в том, что жесткий диск - самое медленное устройство на сервере и он делится между всеми VPS. А своп очень сильно нагружает диски, поэтому малейшая активность свопа у нескольких VPS приведет к тому, что все виртуальные сервера, размещенные на этом сервере, практически перестанут отвечать на запросы. Поэтому на нашем хостинге своп не используется. И любая VPS может реально выделить все количество памяти, указанное в тарифе без свопа.
Некоторые хостинги, чтобы выйти из положения, вводят понятие гарантированно выделяемой памяти. То есть, например у Вас гарантировано 64MB памяти, а обычный лимит на выделение памяти скажем 512MB. Причем, обеспечить всем клиентам эти самые 512MB в таком случае не реально, поэтому и говорится, что гарантировано только 64MB.
Чтобы понять, чем это плохо, нужно задаться вопросом: а что будет, если системе не хватит гарантированной памяти на все VPS? Как себя поведут программы, выделившие например 128MB памяти, если в какой-то момент система отберет у них эту память? Как не сложно догадаться, после этого программы, запущенные на Вашей VPS, или аварийно завершатся или начнут работать неправильно. Программисты, их писавшие, не рассчитывали на то, что уже выделенную память могут отобрать.
Из всего вышеописанного следует очевидный вывод - оперативная память - не тот ресурс, который можно выделить не гарантированно. Поэтому на нашем хостинге объем памяти, указанный в Вашем тарифе, Вы получаете именно гарантированно и никакого другого (не гарантированного) лимита нет.
Мы стремимся быть честными по отношению к клиенту и реально предоставлять заявленные в VPS тарифах ресурсы.


