[pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Luiz Carlos L. Nogueira Jr.
Pessoal,
Tenho essa situação no top, normalmente

top - 15:31:38 up 10 days,  8:13,  4 users,  load average: 8.64, 7.58, 6.75
Tasks: 348 total,  19 running, 329 sleeping,   0 stopped,   0 zombie
Cpu(s): 99.1%us,  0.3%sy,  0.0%ni,  0.3%id,  0.0%wa,  0.0%hi,  0.3%si,
0.0%st
Mem:  20548432k total, 20103744k used,   444688k free,   173956k buffers
Swap:   522104k total,  452k used,   521652k free, 15943964k cached

  PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+
COMMAND

 6793 postgres  16   0 4397m 1.4g 1.4g R 63.8  7.2   1:08.78 postgres:
postgres bancox ipX(37472)
SELECT
 6812 postgres  16   0 4387m 1.2g 1.1g R 45.6  5.9   0:17.29 postgres:
postgres bancox ipX(37491)
SELECT
 6333 postgres  16   0 4409m 1.8g 1.8g R 35.3  9.3   4:34.96 postgres:
postgres bancox ipX(36995)
SELECT
 6789 postgres  16   0 4398m 1.5g 1.4g R 35.3  7.4   1:11.10 postgres:
postgres bancox ipX(37468)
SELECT
 6796 postgres  16   0 4397m 1.0g 987m R 34.2  5.1   0:31.00 postgres:
postgres bancox ipX(37475)
SELECT
 6720 postgres  16   0 4398m 1.5g 1.5g R 31.9  7.7   1:39.07 postgres:
postgres bancox ipX(37400)
SELECT
 6797 postgres  16   0 4398m 1.1g 1.1g R 31.9  5.7   0:46.33 postgres:
postgres bancox ipX(37476)
SELECT
 6818 postgres  16   0 4391m 1.3g 1.3g R 29.6  6.7   0:20.25 postgres:
postgres bancox ipX(37503)
SELECT
 6819 postgres  16   0 4401m 1.5g 1.4g R 29.6  7.4   0:51.29 postgres:
postgres bancox ipX(37504)
SELECT
 6583 postgres  15   0 4398m 1.5g 1.5g R 22.8  7.8   5:40.79 postgres:
postgres bancox ipX(37209)
SELECT
 6810 postgres  16   0 4387m 1.3g 1.2g R 19.4  6.4   0:18.93 postgres:
postgres bancox ipX(37489)
SELECT
 6790 postgres  16   0 4388m 1.0g 1.0g R 13.7  5.1   0:16.35 postgres:
postgres bancox ipX(37469) idle in
transaction
 6820 postgres  15   0 4399m 1.4g 1.4g S  4.6  7.1   0:30.27 postgres:
postgres bancox ipX(37507)
idle
 6815 postgres  16   0 4401m 1.3g 1.3g R  2.3  6.6   0:29.87 postgres:
postgres bancox ipX(37494) idle in
transaction
 6821 postgres  15   0 4397m 1.4g 1.4g S  1.1  7.3   0:44.77 postgres:
postgres bancox ipX(37510) idle in transaction

Temos 4 CPUs, Shared_buffers 4GB, 20 GB de memória (SO) ,max_connections
300 (não foi configurado por nós)
Só que o pool de conexões JBoss pro PG é de mais de 200, mesmo com essa
pouca utilização efetiva de conexões simultãneas

Existe uma degradação muito rápida do ambiente como um todo. Diante disso:
Diminuo o pool de conexões do Jboss?
É normal esse uso acentuado de CPU pra tão poucos processos simultâneos?
Essa memória não diminui  mesmo em horário sem ninguém usar?
O %mem de cada processo não diminui de forma nenhuma?

Agradecido,
Luiz Carlos
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Flavio Henrique Araque Gurgel


Em 01-04-2013 15:44, Luiz Carlos L. Nogueira Jr. escreveu:

Pessoal,
Tenho essa situação no top, normalmente

top - 15:31:38 up 10 days,  8:13,  4 users,  load average: 8.64, 7.58, 6.75
Tasks: 348 total,  19 running, 329 sleeping,   0 stopped,   0 zombie
Cpu(s): 99.1%us,  0.3%sy,  0.0%ni,  0.3%id,  0.0%wa,  0.0%hi,  0.3%si,
0.0%st
Mem:  20548432k total, 20103744k used,   444688k free,   173956k buffers
Swap:   522104k total,  452k used,   521652k free, 15943964k cached

   PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
  6793 postgres  16   0 4397m 1.4g 1.4g R 63.8  7.2   1:08.78 postgres:
postgres bancox ipX(37472) SELECT
  6812 postgres  16   0 4387m 1.2g 1.1g R 45.6  5.9   0:17.29 postgres:
postgres bancox ipX(37491) SELECT
  6333 postgres  16   0 4409m 1.8g 1.8g R 35.3  9.3   4:34.96 postgres:
postgres bancox ipX(36995) SELECT
  6789 postgres  16   0 4398m 1.5g 1.4g R 35.3  7.4   1:11.10 postgres:
postgres bancox ipX(37468) SELECT
  6796 postgres  16   0 4397m 1.0g 987m R 34.2  5.1   0:31.00 postgres:
postgres bancox ipX(37475) SELECT
  6720 postgres  16   0 4398m 1.5g 1.5g R 31.9  7.7   1:39.07 postgres:
postgres bancox ipX(37400) SELECT
  6797 postgres  16   0 4398m 1.1g 1.1g R 31.9  5.7   0:46.33 postgres:
postgres bancox ipX(37476) SELECT
  6818 postgres  16   0 4391m 1.3g 1.3g R 29.6  6.7   0:20.25 postgres:
postgres bancox ipX(37503) SELECT
  6819 postgres  16   0 4401m 1.5g 1.4g R 29.6  7.4   0:51.29 postgres:
postgres bancox ipX(37504) SELECT
  6583 postgres  15   0 4398m 1.5g 1.5g R 22.8  7.8   5:40.79 postgres:
postgres bancox ipX(37209) SELECT
  6810 postgres  16   0 4387m 1.3g 1.2g R 19.4  6.4   0:18.93 postgres:
postgres bancox ipX(37489) SELECT
  6790 postgres  16   0 4388m 1.0g 1.0g R 13.7  5.1   0:16.35 postgres:
postgres bancox ipX(37469) idle in transaction
  6820 postgres  15   0 4399m 1.4g 1.4g S  4.6  7.1   0:30.27 postgres:
postgres bancox ipX(37507) idle
  6815 postgres  16   0 4401m 1.3g 1.3g R  2.3  6.6   0:29.87 postgres:
postgres bancox ipX(37494) idle in transaction
  6821 postgres  15   0 4397m 1.4g 1.4g S  1.1  7.3   0:44.77 postgres:
postgres bancox ipX(37510) idle in transaction

Temos 4 CPUs, Shared_buffers 4GB, 20 GB de memória (SO) ,max_connections
300 (não foi configurado por nós)
Só que o pool de conexões JBoss pro PG é de mais de 200, mesmo com essa
pouca utilização efetiva de conexões simultãneas

Existe uma degradação muito rápida do ambiente como um todo. Diante disso:
Diminuo o pool de conexões do Jboss?
É normal esse uso acentuado de CPU pra tão poucos processos simultâneos?
Essa memória não diminui  mesmo em horário sem ninguém usar?
O %mem de cada processo não diminui de forma nenhuma?


O valor em shared_buffers é alocado quando o PostgreSQL é inicializado e 
assim permanece, o tempo todo e é uma área única para todos os processos.


Cada processo (conexão), porém, pode usar uma memória própria, 
dependendo da consulta que está fazendo. Vejo que você tem vários SELECT 
no seu top.


Perguntas:
1) Que tipo de SELECT são esses, poucos resultados baseados em índices 
ou grandes massas em seqscans? Tem ORDER BY, GROUP BY ou DISTINCT?


2) Qual o valor configurado em work_mem?
Este valor pode ser usado para cada sub-select numa mesma consulta.

[]s

__
Flavio Henrique A. Gurgel
Líder de Projetos Especiais
Consultoria, Projetos & Treinamentos 4LINUX
Tel1: +55-11.2125-4747 ou 2125-4748
www.4linux.com.br
email: fla...@4linux.com.br
__
FREE SOFTWARE SOLUTIONS
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Luiz Carlos L. Nogueira Jr.
Flávio,

Teoricamente deveriam ser selects que voltam poucos dados

work_mem 50MB


Como o SO tem 20GB, o PG tem 4GB de shared buffers, em menos de 12 horas a
memória chega nos 20GB e não baixa de forma nenhuma, mesmo sem ninguém usar
o sistema. Essa característica é normal?




Em 1 de abril de 2013 15:48, Flavio Henrique Araque Gurgel <
fla...@4linux.com.br> escreveu:

>
> Em 01-04-2013 15:44, Luiz Carlos L. Nogueira Jr. escreveu:
>
>  Pessoal,
>> Tenho essa situação no top, normalmente
>>
>> top - 15:31:38 up 10 days,  8:13,  4 users,  load average: 8.64, 7.58,
>> 6.75
>> Tasks: 348 total,  19 running, 329 sleeping,   0 stopped,   0 zombie
>> Cpu(s): 99.1%us,  0.3%sy,  0.0%ni,  0.3%id,  0.0%wa,  0.0%hi,  0.3%si,
>> 0.0%st
>> Mem:  20548432k total, 20103744k used,   444688k free,   173956k buffers
>> Swap:   522104k total,  452k used,   521652k free, 15943964k cached
>>
>>PID USER  PR  NI  VIRT  RES  SHR S %CPU %MEMTIME+  COMMAND
>>   6793 postgres  16   0 4397m 1.4g 1.4g R 63.8  7.2   1:08.78 postgres:
>> postgres bancox ipX(37472) SELECT
>>   6812 postgres  16   0 4387m 1.2g 1.1g R 45.6  5.9   0:17.29 postgres:
>> postgres bancox ipX(37491) SELECT
>>   6333 postgres  16   0 4409m 1.8g 1.8g R 35.3  9.3   4:34.96 postgres:
>> postgres bancox ipX(36995) SELECT
>>   6789 postgres  16   0 4398m 1.5g 1.4g R 35.3  7.4   1:11.10 postgres:
>> postgres bancox ipX(37468) SELECT
>>   6796 postgres  16   0 4397m 1.0g 987m R 34.2  5.1   0:31.00 postgres:
>> postgres bancox ipX(37475) SELECT
>>   6720 postgres  16   0 4398m 1.5g 1.5g R 31.9  7.7   1:39.07 postgres:
>> postgres bancox ipX(37400) SELECT
>>   6797 postgres  16   0 4398m 1.1g 1.1g R 31.9  5.7   0:46.33 postgres:
>> postgres bancox ipX(37476) SELECT
>>   6818 postgres  16   0 4391m 1.3g 1.3g R 29.6  6.7   0:20.25 postgres:
>> postgres bancox ipX(37503) SELECT
>>   6819 postgres  16   0 4401m 1.5g 1.4g R 29.6  7.4   0:51.29 postgres:
>> postgres bancox ipX(37504) SELECT
>>   6583 postgres  15   0 4398m 1.5g 1.5g R 22.8  7.8   5:40.79 postgres:
>> postgres bancox ipX(37209) SELECT
>>   6810 postgres  16   0 4387m 1.3g 1.2g R 19.4  6.4   0:18.93 postgres:
>> postgres bancox ipX(37489) SELECT
>>   6790 postgres  16   0 4388m 1.0g 1.0g R 13.7  5.1   0:16.35 postgres:
>> postgres bancox ipX(37469) idle in transaction
>>   6820 postgres  15   0 4399m 1.4g 1.4g S  4.6  7.1   0:30.27 postgres:
>> postgres bancox ipX(37507) idle
>>   6815 postgres  16   0 4401m 1.3g 1.3g R  2.3  6.6   0:29.87 postgres:
>> postgres bancox ipX(37494) idle in transaction
>>   6821 postgres  15   0 4397m 1.4g 1.4g S  1.1  7.3   0:44.77 postgres:
>> postgres bancox ipX(37510) idle in transaction
>>
>> Temos 4 CPUs, Shared_buffers 4GB, 20 GB de memória (SO) ,max_connections
>> 300 (não foi configurado por nós)
>> Só que o pool de conexões JBoss pro PG é de mais de 200, mesmo com essa
>> pouca utilização efetiva de conexões simultãneas
>>
>> Existe uma degradação muito rápida do ambiente como um todo. Diante disso:
>> Diminuo o pool de conexões do Jboss?
>> É normal esse uso acentuado de CPU pra tão poucos processos simultâneos?
>> Essa memória não diminui  mesmo em horário sem ninguém usar?
>> O %mem de cada processo não diminui de forma nenhuma?
>>
>
> O valor em shared_buffers é alocado quando o PostgreSQL é inicializado e
> assim permanece, o tempo todo e é uma área única para todos os processos.
>
> Cada processo (conexão), porém, pode usar uma memória própria, dependendo
> da consulta que está fazendo. Vejo que você tem vários SELECT no seu top.
>
> Perguntas:
> 1) Que tipo de SELECT são esses, poucos resultados baseados em índices ou
> grandes massas em seqscans? Tem ORDER BY, GROUP BY ou DISTINCT?
>
> 2) Qual o valor configurado em work_mem?
> Este valor pode ser usado para cada sub-select numa mesma consulta.
>
> []s
>
> __**
> Flavio Henrique A. Gurgel
> Líder de Projetos Especiais
> Consultoria, Projetos & Treinamentos 4LINUX
> Tel1: +55-11.2125-4747 ou 2125-4748
> www.4linux.com.br
> email: fla...@4linux.com.br
> __
> FREE SOFTWARE SOLUTIONS
> __**_
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.**org.br
> https://listas.postgresql.org.**br/cgi-bin/mailman/listinfo/**pgbr-geral
>
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Leonardo Cezar
2013/4/1 Luiz Carlos L. Nogueira Jr. 

> Pessoal,
> Tenho essa situação no top, normalmente
>
> top - 15:31:38 up 10 days,  8:13,  4 users,  load average: 8.64, 7.58, 6.75
> Tasks: 348 total,  19 running, 329 sleeping,   0 stopped,   0 zombie
> Cpu(s): 99.1%us,  0.3%sy,  0.0%ni,  0.3%id,  0.0%wa,  0.0%hi,  0.3%si,
> 0.0%st
> Mem:  20548432k total, 20103744k used,   444688k free,   173956k buffers
> Swap:   522104k total,  452k used,   521652k free, 15943964k cached
>
> Existe uma degradação muito rápida do ambiente como um todo. Diante disso:
>

Degradação?


> Diminuo o pool de conexões do Jboss?
>

Não sei.


> É normal esse uso acentuado de CPU pra tão poucos processos simultâneos?
>

Aperte "1" em seu teclado com estiver rodando o top e apresente o resultado
novamente..


> Essa memória não diminui  mesmo em horário sem ninguém usar?
>

Clássico... http://www.linuxatemyram.com/


> O %mem de cada processo não diminui de forma nenhuma?
>

Novamente... http://www.linuxatemyram.com/

Abraço!

-Leo
-- 
Leonardo Cezar
http://www.postgreslogia .com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Flavio Henrique Araque Gurgel

A moda do top-post voltou na lista.

Em 01-04-2013 15:58, Luiz Carlos L. Nogueira Jr. escreveu:

Flávio,

Teoricamente deveriam ser selects que voltam poucos dados

work_mem 50MB


Se suas 200 conexões do pool forem abertas e cada uma usar *só* 50MB, 
isso dá 10GB.
Lembrando que consultas complicadas podem usar mais de uma vez isso, 
então, você está com risco um pouco alto de esgotar a memória do seu 
servidor.




Como o SO tem 20GB, o PG tem 4GB de shared buffers, em menos de 12 horas
a memória chega nos 20GB e não baixa de forma nenhuma, mesmo sem ninguém
usar o sistema. Essa característica é normal?


Veja no seu top ou free onde diz:
15943964k cached

Tem 15GB que seu S.O. está usando pra cache de disco.
Isso é normal, esperado e, felizmente, acontece.

Se outros programas precisarem de mais RAM, o S.O. tira daí.
A memória não está "livre" mas em uso por cache do S.O.
Não há nada de errado em seu PostgreSQL.

[]s

__
Flavio Henrique A. Gurgel
Líder de Projetos Especiais
Consultoria, Projetos & Treinamentos 4LINUX
Tel1: +55-11.2125-4747 ou 2125-4748
www.4linux.com.br
email: fla...@4linux.com.br
__
FREE SOFTWARE SOLUTIONS
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Flavio Henrique Araque Gurgel

Em 01-04-2013 16:02, Leonardo Cezar escreveu:

Essa memória não diminui  mesmo em horário sem ninguém usar?


Clássico... http://www.linuxatemyram.com/

O %mem de cada processo não diminui de forma nenhuma?


Novamente... http://www.linuxatemyram.com/


Léo, se eu conhecesse esse site antes, teria economizado 99,9% de minha 
saliva ao explicar como o Linux usa a memória :D


[]s

__
Flavio Henrique A. Gurgel
Líder de Projetos Especiais
Consultoria, Projetos & Treinamentos 4LINUX
Tel1: +55-11.2125-4747 ou 2125-4748
www.4linux.com.br
email: fla...@4linux.com.br
__
FREE SOFTWARE SOLUTIONS
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Leonardo Cezar
2013/4/1 Flavio Henrique Araque Gurgel 

> Novamente... http://www.linuxatemyram.com/
>>
>
> Léo, se eu conhecesse esse site antes, teria economizado 99,9% de minha
> saliva ao explicar como o Linux usa a memória :D


As vezes a FAQ não funciona...

Você fez um resumo daquilo que na verdade 99,9% precisa conhecer ;-D

Abraço!

-Leo
-- 
Leonardo Cezar
http://www.postgreslogia .com
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Luiz Carlos L. Nogueira Jr.
Valeu pela dica de como é usada  a memória no Linux

Em 1 de abril de 2013 16:14, Leonardo Cezar  escreveu:

> 2013/4/1 Flavio Henrique Araque Gurgel 
>
>> Novamente... http://www.linuxatemyram.com/
>>>
>>
>> Léo, se eu conhecesse esse site antes, teria economizado 99,9% de minha
>> saliva ao explicar como o Linux usa a memória :D
>
>
> As vezes a FAQ não funciona...
>
> Você fez um resumo daquilo que na verdade 99,9% precisa conhecer ;-D
>
> Abraço!
>
> -Leo
> --
> Leonardo Cezar
> http://www.postgreslogia .com
>
> ___
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Consumo alto de memória e CPU

2013-04-01 Thread Flavio Henrique Araque Gurgel

Em 01-04-2013 16:14, Leonardo Cezar escreveu:


Novamente... http://www.linuxatemyram.com/


Léo, se eu conhecesse esse site antes, teria economizado 99,9% de
minha saliva ao explicar como o Linux usa a memória :D


As vezes a FAQ não funciona...

Você fez um resumo daquilo que na verdade 99,9% precisa conhecer ;-D


Rapaz, não é só lista. Clientes, colegas, também!

[]s


__
Flavio Henrique A. Gurgel
Líder de Projetos Especiais
Consultoria, Projetos & Treinamentos 4LINUX
Tel1: +55-11.2125-4747 ou 2125-4748
www.4linux.com.br
email: fla...@4linux.com.br
__
FREE SOFTWARE SOLUTIONS
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral