O uso de memória do Apache nunca ultrapassa 5%

2

Estou implantando um aplicativo que usa o ImageMagick no servidor VPS. Eu testei em dois sistemas operacionais diferentes: Centos6 e Ubuntu Server 12.04.

No Centos6, o aplicativo está funcionando corretamente e ao acessar o script do ImageMagick, o uso da memória pode ficar acima de 90% (FYI, tanto o sistema operacional quanto o VPS estão usando um pacote de memória de 512 MB). No entanto, quando eu tentei o mesmo script, nunca vai acima de 5-6,2%.

top result no servidor ubuntu:

PID  USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
1816 userx     20   0  341m  24m 5260 D 40.8  5.0   0:13.85 apache2

top result no servidor centos:

PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
15798 ariefbay  20   0  183m 155m 5684 R 99.8 31.2   0:05.96 httpd

Esta limitação de memória resultou em um processo muito longo. Eu preciso que seja rápido e, como este será um servidor de uso limitado, não me importo se consumir toda a memória.

Eu tentei o seguinte passo:

  • adicionando o RLimitMEM ao /etc/apache2/apache2.conf

    RLimitMEM max max
    
  • definindo ulimit -l unlimited
  • adicionando a configuração em /etc/security/limits.conf :

    userx - rtprio 99
    userx - memlock unlimited
    userx - nice -10
    
    • nota: apache2 process está sendo executado como userx .
    • isso está funcionando bem, como comprovado por ulimit -a :

      userx@do:/etc/apache2$ ulimit -a
      core file size          (blocks, -c) 0
      data seg size           (kbytes, -d) unlimited
      scheduling priority             (-e) 30
      file size               (blocks, -f) unlimited
      pending signals                 (-i) 3861
      max locked memory       (kbytes, -l) unlimited
      max memory size         (kbytes, -m) unlimited
      open files                      (-n) 1024
      pipe size            (512 bytes, -p) 8
      POSIX message queues     (bytes, -q) 819200
      real-time priority              (-r) 99
      stack size              (kbytes, -s) 8192
      cpu time               (seconds, -t) unlimited
      max user processes              (-u) 3861
      virtual memory          (kbytes, -v) unlimited
      file locks                      (-x) unlimited
      
  • Também posso ver que as configurações de memória estão funcionando bem, observando / proc / pic / limits:

    userx@do:/etc/apache2$ cat /proc/1811/limits
    Limit                     Soft Limit           Hard Limit           Units
    Max cpu time              unlimited            unlimited            seconds
    Max file size             unlimited            unlimited            bytes
    Max data size             unlimited            unlimited            bytes
    Max stack size            8388608              unlimited            bytes
    Max core file size        0                    unlimited            bytes
    Max resident set          unlimited            unlimited            bytes
    Max processes             3861                 3861                 processes
    Max open files            8192                 8192                 files
    Max locked memory         unlimited            unlimited            bytes
    Max address space         unlimited            unlimited            bytes
    Max file locks            unlimited            unlimited            locks
    Max pending signals       3861                 3861                 signals
    Max msgqueue size         819200               819200               bytes
    Max nice priority         30                   30
    Max realtime priority     99                   99
    Max realtime timeout      unlimited            unlimited            us
    

Eu fiz algo errado? O que devo fazer para resolver este problema no Ubuntu?

    
por ariefbayu 21.06.2013 / 10:04

0 respostas