VDSPlanet.ru Making the difference in VDS Hosting
Что убивает мой процесс?

Материал из Wiki.VDSPlanet.ru.

Перейти к: навигация, поиск

В данной маленькой статейке я научу Вас понимать и находить причины умерщления процессов на сервере. Многие люди задаются вопросм почему процесс был запущен и потом исчез (упал)

1. Заходим под root в VDS сервер и вводим следущее.

  cat /proc/user_beancounters

2. При вводе выйдет информация в столбиках похожее на следущее.

[root@pip pip]# cat /proc/user_beancounters
Version: 2.5
      uid  resource           held    maxheld    barrier      limit    failcnt
     130:  kmemsize        3030706    4479695 2147483646 2147483646          0
           lockedpages           0          0     999999     999999          0
           privvmpages       22725      30387  255999744  255999744          0
           shmpages            685       1981     128000     128000          0
           dummy                 0          0          0          0          0
           numproc              34         57     999999     999999          0
           physpages          4454      19347          0 2147483647          0
           vmguarpages           0          0     128000 2147483647          0
           oomguarpages       5947      19347     128000 2147483647          0
           numtcpsock           67        144    7999992    7999992          0
           numflock              3         16     999999     999999          0
           numpty                1          1     500000     500000          0
           numsiginfo            0          9     999999     999999          0
           tcpsndbuf        622340     789288  104857600  286883840          0
           tcprcvbuf       3575720    6756184  104857600  286883840          0
           othersockbuf       8244      73424  104857600  286883840          0
           dgramrcvbuf           0       8380  104857600  286883840          0
           numothersock         13         36    7999992    7999992          0
           dcachesize            0          0 2147483646 2147483646          0
           numfile            1421       2019   23999976   23999976          0
           dummy                 0          0          0          0          0
           dummy                 0          0          0          0          0
           dummy                 0          0          0          0          0
           numiptent            18         18     999999     999999          0

3. Проверяем колонку failcnt. В данном случае вся колонка содержит нули (0). Но значения могут быть различны. Может быть 1 2 и другие. По названиям колонок определяем в чем проблема. В основном (чаще всего) проблемы возникают из за того что ваш vds используем много памяти или больше памяти чем позволено, и процессы убиваются из за недостатка памяти для их работы

Ниже приведена расшифровка каждого параметра:


numproc - Максимальное количество процессов и тредов (потоков).
numothersock - Максимальное количество TCP-сокетов.
vmguarpages - Гарантированный объем оперативной памяти, 
которая может быть запрошена стандартными механизмами резервирования памяти в Linux.
kmemsize - Память ядра — объем оперативной памяти, выделяемый для внутренних структур данных
ядра, связанных с процессами виртуального сервера. 
Каждый процесс запрашивает как минимум 24 Кб таких данных. Средний процесс использует 30—60 Кб ядерной памяти.
Большие процессы, такие как Apache и MySQL, могут использовать гораздо больше.
tcpsndbuf - Суммарный размер буферов, которых может быть использован для отправки данных через TCP-соединения.
tcprcvbuf - Суммарный размер буферов, которых может быть использован для приема данных через TCP-соединения.
othersockbuf - Суммарный размер буферов, которые могут быть использованы как для приема, 
так и для отправки данных через локальные сокеты, а также буферы, 
используемые для отправки данных по протоколу UDP.
dgrampages - Суммарный размер буферов, которые могут быть использованы для приема данных через UDP-соединения.
privvmpages - Объем оперативной памяти, которая может быть запрошена процессами виртуального
сервера системным вызовом malloc и другими стандартными механизмами резервирования памяти в Linux.
oomguarpages - Гарантированный объем оперативной памяти, превышение  которого вызовет сигнал outof-memory.
lockedpages - Объем памяти, которая может быть заблокирована с помощью системного вызова mlock. 
Этот объем включен в kmemsize.
shmpages - Общий объем разделяемой оперативной памяти (IPC). Этот параметр включен в privvmpages.
numfile - Максимальное количество открытых файлов.
numflock - Максимальное количество возможных блокировок файлов.
numpty - Максимальное количество псевдо-терминалов.
numsiginfo - Максимальное количество siginfo-структур. Размер структуры включен в kmemsize.
dcachesize - Объем памяти, необходимый для блокировки dentry- и inode-структур. Объем этой памяти включен в kmemsize.
numiptent - Максимальное количество записей в firewall (netfilter).