Уходит оперативка на сервере

1 23
ebitok
На сайте с 07.11.2011
Offline
112
#21

Ладно всем спасибо)

iqmaker
На сайте с 17.04.2012
Offline
309
#22

Чет не встретил здесь версии, что linux в частности debian, ubuntu оптимизируют использование памяти и могут показывать что заняли ее всю или почти всю, но если она вдруг потребуется сразу ее отдают. Чтобы понять, что на сервере дефицит памяти попробуйте ее выделить (например простым скриптом), скорее всего никакого дефицита нет, 15 человек онлайн это вообще в среднем ни о чем даже для vps с 512mb на борту (с честной виртуализацией например xen), конечно зависит от самих работающих процессов. Для примера можно запустить скомпиленный (g++ file.cpp):


#include <iostream>
#include <cstring>
using namespace std;
int main(int argc, char **argv){
for( int i = 1; i <= 2500; i+=10 ) {
cout << "пробуем выделить " << i << " mb" << endl;

int size = i * 1024 * 1024;
char *m = new char;
memset( m, 0, size );

cout << "выделили " << i << " mb" << endl;
delete[] m;
}
}

и вы увидите в консоли сколько сервер смог выделить для скрипта памяти, только когда не сможет выделить сервер повиснет, после чего произойдет bad_alloc. В общем высокая цифра использования памяти системой редко означает, что памяти не хватает.

---------- Добавлено 07.12.2014 в 13:27 ----------

Вот похожий вопрос и похожий ответ :): http://askubuntu.com/questions/522853/ubuntu-14-too-high-memory-usage

Андрей
На сайте с 30.09.2009
Offline
482
#23
ps -eo pmem,pcpu,rss,vsize,args

iqmaker, а разве эта команда не показывает реального использования процессами без кэша файловой?

EuroHoster.org ( https://eurohoster.org/ru/ ) - территория быстрых серверов. Выделенные серверы, VPS, SSL, домены и VPN.
iqmaker
На сайте с 17.04.2012
Offline
309
#24
WapGraf:
iqmaker, а разве эта команда не показывает реального использования процессами без кэша файловой?

Честно сказать не пользовался этой командой, здесь: http://askubuntu.com/questions/9642/how-can-i-monitor-the-memory-usage, рекомендуют скрипт: https://raw.githubusercontent.com/pixelb/ps_mem/master/ps_mem.py, который показывает реальное использование памяти. Давно еще столкнулся с тем, что недостаток оперативки не всегда то, что кажется, если память забита и сервер реально начал лагать, когда свободной оперативки 0, тогда конечно да, а так ... Вот к примеру сейчас на домашнем ubuntu 14.04, top показывает свободно 180mb из 6gb, htop что свободно 2800mb, скрипт выше - что использовано 2.4 из 6 gb, c++ скрипт выделяет непрерывный кусок памяти размером: 2041mb, именно непрерывный, если выделять по 1 мб будет заметно больше (не хочу тестить т.к. комп зависнет). Не однозначно с этой памятью все.

ebitok
На сайте с 07.11.2011
Offline
112
#25

Это означает что смог выделить 460 мегов?

т.е. ваша теория подтвердилась что оперативы еще море на самом деле?

[3]+ Stopped top
-bash-4.3$ g++ test.cpp^C
-bash-4.3$ a.out
-bash: a.out: command not found
-bash-4.3$
-bash-4.3$ g++ test.cpp
-bash-4.3$ ./a.out
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 1 mb
▒▒▒▒▒▒▒▒ 1 mb
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 11 mb
▒▒▒▒▒▒▒▒ 11 mb
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 21 mb
▒▒▒▒▒▒▒▒ 21 mb
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 31 mb
▒▒▒▒▒▒▒▒ 31 mb
.....
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 431 mb
▒▒▒▒▒▒▒▒ 431 mb
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 441 mb
▒▒▒▒▒▒▒▒ 441 mb
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 451 mb
▒▒▒▒▒▒▒▒ 451 mb
▒▒▒▒▒▒▒ ▒▒▒▒▒▒▒▒ 461 mb
terminate called after throwing an instance of 'std::bad_alloc'
what(): std::bad_alloc
Андрей
На сайте с 30.09.2009
Offline
482
#26

top, htop учитываю кэш файловой системы. free -m можно посмотреть размер кэша.

---------- Добавлено 07.12.2014 в 14:22 ----------

G-and-Y
На сайте с 29.06.2013
Offline
156
#27

ТС сервер падает? Или тормозит? Если все ок то не дергайтесь и сидите ровно, начнет падать настройте по ссылке ниже, у мну сумарный траф где то 6к с 10 сайтов есть и на вп, и все работает отлично.

/ru/forum/859302

---------- Добавлено 07.12.2014 в 17:24 ----------

п.с. И то пришлось настроить только из-за того что при мелких ддосах (15к запросов на бд единоразово) падал мускуль.

Абузо-устойчивые впс в Нидерландах от 5$/мес (https://cp.inferno.name/aff.php?aff=2991)
mahovik
На сайте с 03.05.2013
Offline
113
#28

Ну так возьмите мошьнее вдску или скрипт нужно оптимизировать

Рекламная сеть под адалт и развлекательные сайты, платит в USDT, PayPal, Paxum и др. https://u.to/EfsTHA
iqmaker
На сайте с 17.04.2012
Offline
309
#29
ebitok:
Это означает что смог выделить 460 мегов?

Да, это означает что сервер смог выделить 451 mb, возможно что-то кинул в своп (по идее не должен при выделении целого куска), но однозначно памяти предостаточно, не парьтесь с расширением.

Да, к стати сделайте эксперимент раз уж запускаете скрипт, после того как вылетел exception bad_alloc, посмотрите в top, сколько памяти свободно, будете удивлены.

1 23

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий