Prezada Comunidade PostgreSQL, Trabalhamos com soluções em Data Center e temos um cenário de um cliente que este nos preocupando, logo estamos reportando a comunidade, a fim de buscar uma luz no final do túnel, sendo assim segue nosso cenário:
* Servidor FreeBSD 8.0 64bits * Pacostes instalados: postgresql-client-8.2.13 PostgreSQL database (client) postgresql-contrib-8.2.13_2 The contrib utilities from the PostgreSQL distribution postgresql-server-8.2.13 The most advanced open-source database available anywhere * Problema: Ao executarmo a mesma query no servidor do cliente esta demora menos de 02:30 minutos já no cenário apresentado esta demorando mais de 03:30, sendo assim segue a forma que estamos executando a query: |_r...@cliente: 10:29:36 ~_| date; time psql banco tabela -f consulta.sql 1> /dev/null 2> /dev/null Ao analisarmos o consumo dos recursos do servidor notamos o seguinte problema: |_r...@cliente: 10:29:51 ~_| top last pid: 37984; load averages: 0.63, 0.18, 0.06 up 0+05:38:26 10:30:59 46 processes: 2 running, 44 sleeping CPU: 49.2% user, 0.0% nice, 0.8% system, 0.4% interrupt, 49.6% idle Mem: 105M Active, 18M Inact, 92M Wired, 228K Cache, 81M Buf, 1783M Free Swap: 8192M Total, 8192M Free PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND 37982 pgsql 1 118 0 115M 49708K CPU1 1 1:01 100.00% postgres 861 root 1 44 0 6676K 3768K select 0 0:10 0.00% sshd 823 pgsql 1 44 0 83712K 9784K select 0 0:04 0.00% postgres 596 root 1 44 0 3344K 1244K select 0 0:01 0.00% syslogd 832 www 1 44 0 6028K 3476K kqread 0 0:01 0.00% lighttpd 868 root 1 44 0 6072K 3548K select 0 0:00 0.00% sendmail 824 pgsql 1 44 0 10400K 4528K select 0 0:00 0.00% postgres 887 www 1 45 0 29704K 18156K accept 1 0:00 0.00% php-cgi 875 www 1 45 0 29704K 18160K accept 1 0:00 0.00% php-cgi 846 www 1 51 0 27656K 14448K wait 0 0:00 0.00% php-cgi 858 www 1 51 0 27656K 14676K wait 0 0:00 0.00% php-cgi 859 www 1 52 0 27656K 14768K wait 0 0:00 0.00% php-cgi 860 www 1 52 0 27656K 14852K wait 1 0:00 0.00% php-cgi 821 pgsql 1 44 0 83712K 9744K select 0 0:00 0.00% postgres 894 root 1 44 0 3372K 1372K nanslp 0 0:00 0.00% cron 28908 pgsql 1 46 0 84736K 12956K sbwait 1 0:00 0.00% postgres 37979 root 1 44 0 3680K 1928K CPU0 0 0:00 0.00% top 28909 pgsql 1 47 0 84736K 12972K sbwait 1 0:00 0.00% postgres 37973 root 1 44 0 9400K 4416K select 0 0:00 0.00% sshd 37976 root 1 44 0 4560K 2404K wait 0 0:00 0.00% bash 37981 root 1 45 0 6972K 3572K select 1 0:00 0.00% psql 37978 root 1 44 0 4560K 2404K wait 0 0:00 0.00% bash 872 smmsp 1 44 0 6072K 3464K pause 1 0:00 0.00% sendmail 950 root 1 76 0 3344K 1180K ttyin 0 0:00 0.00% getty 948 root 1 76 0 3344K 1180K ttyin 1 0:00 0.00% getty 954 root 1 76 0 3344K 1180K ttyin 0 0:00 0.00% getty 952 root 1 76 0 3344K 1180K ttyin 1 0:00 0.00% getty 953 root 1 76 0 3344K 1180K ttyin 1 0:00 0.00% getty 951 root 1 76 0 3344K 1180K ttyin 0 0:00 0.00% getty 949 root 1 76 0 3344K 1180K ttyin 1 0:00 0.00% getty 955 root 1 76 0 3344K 1180K ttyin 0 0:00 0.00% getty 478 root 1 44 0 1888K 540K select 1 0:00 0.00% devd 889 www 1 52 0 27656K 14800K accept 1 0:00 0.00% php-cgi 888 www 1 52 0 27656K 14800K accept 1 0:00 0.00% php-cgi 877 www 1 52 0 27656K 14884K accept 1 0:00 0.00% php-cgi 874 www 1 51 0 27656K 14480K accept 0 0:00 0.00% php-cgi 881 www 1 51 0 27656K 14708K accept 1 0:00 0.00% php-cgi 879 www 1 52 0 27656K 14884K accept 1 0:00 0.00% php-cgi 890 www 1 53 0 27656K 14800K accept 1 0:00 0.00% php-cgi 883 www 1 51 0 27656K 14708K accept 1 0:00 0.00% php-cgi 876 www 1 51 0 27656K 14480K accept 0 0:00 0.00% php-cgi 878 www 1 51 0 27656K 14480K accept 0 0:00 0.00% php-cgi 873 www 1 51 0 27656K 14480K accept 1 0:00 0.00% php-cgi 880 www 1 52 0 27656K 14884K accept 0 0:00 0.00% php-cgi 882 www 1 51 0 27656K 14708K accept 1 0:00 0.00% php-cgi 885 www 1 51 0 27656K 14708K accept 1 0:00 0.00% php-cgi Como podem perceber acima o servidor esta com memória, hard drive e cpu com disponibilidade considerável, mas detectamos que somente um processo: "postgresql 37982" esta com 100% de uso, mesmo tendo recursos no equipamento disponíveis, parecendo que o PostgreSQL não esta utilizando o recurso de THREAD, pois outros 03 processos "postgresql" estão utilizando 0% de recursos, algum integrante já passou por este problema ? como podemos liberar para este processo um uso maior de recursos do servidor, ou mesmo liberar mais de um processo para a mesma query, no estilo THREAD, desde já obrigado pela atenção de todos. Atenciosamente. Virtual Number: 1602222 São Paulo: +55 11 3711 5918 Porto Alegre: +55 51 3251 2616 Santa Cruz do Sul: +55 51 3056 9444 / +55 51 3056 4944 Fax: +55 51 3251 2615 Suporte: +55 51 8100 2280 [email protected] http://www.sizeof.com.br
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
