Запуск Ubuntu без установки использует 500 из 512 МБ, какой процесс я должен убить?

Запуск linux ubuntu 14.04 на сервере digitalOcean, который дает мне 512 МБ оперативной памяти. Удивительно, но при попытке запустить активатор для игрового приложения я понял, что почти вся память была использована. Используя команду «htop», я получаю этот вывод. какой процесс я должен убить (я использую 2 соединения ssh, одно для мониторинга, а другое для работы).

Я также мог бы назначить память подкачки, но это повлияет на производительность. Я думал, что 512 МБ должно быть более чем достаточно для запуска игрового сервера. Я имею в виду, серьезно, мы отправили человека на Луну с гораздо меньшими затратами.

Имгур


person jugutier    schedule 16.10.2014    source источник
comment
Что именно вы хотите сделать с этим сервером? Какое игровое приложение вы имеете в виду? И почему стоит выбрать Ubuntu 14.04? РЕДАКТИРОВАТЬ: Можете ли вы опубликовать полный список процессов?   -  person MrGucky2010    schedule 16.10.2014
comment
Похоже, вы используете только 79 из 490 МБ ... Ubuntu Server 14.04 требуется только 192 МБ оперативной памяти для работы. У вас достаточно места для работы очень медленного веб-сервера.   -  person JNevill    schedule 16.10.2014
comment
Я выбираю Ubuntu, потому что это дистрибутив, который я использую и с которым знаком. На данный момент базовое приложение для воспроизведения шаблонов. Проблема возникла после того, как я набрал активатор (после того, как скачал zip). Планирую разместить игровой сервер на jvm 7, возможно, почтовый сервер и nginx (мог бы прожить без последних 2-х)   -  person jugutier    schedule 16.10.2014
comment
Предупреждение виртуальной машины 64-разрядного сервера OpenJDK: ИНФОРМАЦИЯ: os::commit_memory(0x00000000c5550000, 715849728, 0) не удалось; error='Невозможно выделить память' (errno=12) # # Недостаточно памяти для продолжения среды выполнения Java. # Собственное выделение памяти (malloc) не смогло выделить 715849728 байт для выделения зарезервированной памяти. # Файл отчета об ошибке с дополнительной информацией сохраняется как: # /root/activator/activator-1.2.10-minimal/hs_err_pid10978.log   -  person jugutier    schedule 16.10.2014
comment
Таким образом, чтобы запустить активатор на вашем дроплете, вам понадобится 179 МБ для операционной системы плюс 715,85 МБ для активатора. Похоже, вам понадобится большая капля. digitalocean.com/community/tutorials/   -  person JNevill    schedule 16.10.2014
comment
pastebin.com/75A37KY7   -  person jugutier    schedule 16.10.2014
comment
Как вы думаете, есть ли другой способ сделать это на этой капле? может дать активатору меньше памяти? Я думал, что это должно быть «лайтвей», как написано на сайте.   -  person jugutier    schedule 16.10.2014
comment
Проверьте это, 512 МБ все еще довольно мало для того, что вы делаете, но, возможно, это может помочь: stackoverflow.com/questions/20157775/   -  person JNevill    schedule 16.10.2014


Ответы (1)


Linux максимально использует память, но это не значит, что она недоступна для ваших приложений. Он будет использовать память для кэширования определенных вещей (например, файлов) и память для буферов. На снимке экрана вы увидите, что полоса использования памяти состоит из секций разного цвета:

Зеленый — память используется.

Синий буфер

желтый это кеш

Таким образом, как правило, любые приложения, которые вы запускаете, которым требуется больше памяти, будут выделять ее из памяти, используемой для кэширования данных.

Наличие пространства подкачки, как правило, хорошая идея - оно не повлияет на производительность, если только ядро ​​​​не начнет интенсивно подкачиваться, но, как правило, это лучше, чем альтернатива, когда ваши приложения будут аварийно завершать работу из-за ошибки нехватки памяти.

person wheelybird    schedule 16.10.2014
comment
использование подкачки в этом сценарии приведет к тяжелой подкачке, верно? Я имею в виду 79 МБ от Linux и 700 от JVM. Это нормальный объем памяти для jvm? - person jugutier; 16.10.2014
comment
Ну, для JVM нет нормального размера памяти - я подозреваю, что приложение, которое вы пытаетесь запустить, специально настроило этот объем памяти (и, вероятно, не без оснований - это может быть приложение, требующее памяти). Вы увидите такие параметры команды, как -Xms и -Xmx, переданные JVM - они настраивают "кучу", то есть сколько памяти Java попытается выделить; -Xms - это минимальный объем памяти, который ему нужен, что, вероятно, соответствует высокому значению. Я боюсь, что добавление подкачки снизит производительность, потому что для выделения такого большого объема памяти ядро ​​​​будет постоянно подкачиваться. - person wheelybird; 16.10.2014
comment
Я не загрузил свое приложение как таковое, это просто команда активатора из игры. Я возьму капельку побольше или воспользуюсь постом, предложенным @jnevill. Спасибо!! - person jugutier; 16.10.2014