Когда я запустил экземпляр EC2, я заметил, что виртуальная память не включена.
$ free
total used free shared buffers cached
Mem: 1017260 344956 672304 60 141252 136976
-/+ buffers/cache: 66728 950532
Swap: 0 0 0
Где в типичной установке Linux, он бы создал раздел подкачки по умолчанию. Есть ли какая-то причина, по которой виртуальная память не включена на EC2 по умолчанию? Или память моего EC2 уже получает частично физическую / частично подкачиваемую?
решение1
Я не думаю, что вам следует включать виртуальную память, если она вам не нужна. В большинстве случаев ваш диск EBS находится в сети и относительно медленный, поэтому если вы часто меняете местами, это замедлит ваш сервер. Если у вас есть диск экземпляра, SSD внутри машины, он будет довольно быстрым.
Однако, если вам нужно больше памяти и она не активно подкачивается, немного виртуальной памяти может помочь вам запустить больше программного обеспечения на меньшей виртуальной машине. Я запускаю t2.nano с 512 МБ ОЗУ и 512 МБ подкачки, и она отлично работает. С этим я могу запустить Nginx, PHP 5.6, MySQL и несколько утилит без проблем.
У меня есть руководство о том, как я добавил пространство подкачки в свой экземпляр.здесь.
Вот настройки памяти моего сервера
[ec2-user@aws ~]$ free
total used free shared buffers cached
Mem: 500984 458016 42968 118864 13164 171068
-/+ buffers/cache: 273784 227200
Swap: 524284 141252 383032