High memory use during assets precompilation

В этом случае вы могли бы предоставить вывод vmstat 5? Если вы смотрите на ps или top, то, возможно, видите не ту память, которая используется. Выделенная память не так важна, если она не используется.

Например, в выводе ps я вижу VSZ и RSS. Для меня важен RSS.

# ps uax|egrep '[0-9].unicorn|VS[Z]'
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
ddiscou+  2192  0.0 13.4 558320 267540 ?       Sl   Jan10  33:21 unicorn master -E production -c config/unicorn.conf.rb
ddiscou+  2294  0.0 18.2 5126600 363432 ?      Sl   Jan10  90:59 unicorn worker[0] -E production -c config/unicorn.conf.rb
ddiscou+  2301  0.0 14.2 5149576 282892 ?      Sl   Jan10  38:40 unicorn worker[1] -E production -c config/unicorn.conf.rb

В top я вижу то же самое, но это называется VIRT и RES.

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                                                          
 2284 ddiscou+  25   5 5246644 327496   5640 S  1.7 16.4 872:50.70 ruby                                                             
 2294 ddiscou+  20   0 5126600 364284  14436 S  0.7 18.3  91:00.13 ruby                                                             

vmstat показывает текущее давление на память — сколько осталось свопинга, сколько свободной памяти и буферной памяти, и, что наиболее важно, есть ли свопинг на диск (колонка si).

root@ubuntu-2gb-nbg1-1:~# vmstat 5 5
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 0  0 239616 127080 185428 464448    0    0    14    32    4    2  2  1 97  0  0
 0  0 239616 124584 185432 464500    0    0     0    13  138  318  2  2 96  0  0
 0  0 239616 126120 185436 464500    0    0     0    13  116  264  1  0 99  0  0
 0  0 239616 120376 185436 464504    0    0     0    46  125  322  3  2 95  0  0
 0  0 239616 123448 185436 464504    0    0     0    73  129  306  1  1 98  0  0