PgBouncer - Instalação no Debian 6.0 Squeeze

O PgBouncer, assim como o PGpool, serve para criar um pool de conexões com o PostgreSQL, a diferença é que o PgBouncer é bem mais leve e performático.

[ Hits: 19.227 ]

Por: Francisco Rodrigues em 18/12/2012 | Blog: http://br.linkedin.com/in/fjrodrigues/pt


Acessando o pseudobanco de administração do PgBouncer e verificando a performance



Pronto, você pode agora conectar no pseudobanco de administração do PgBouncer com o seguinte comando:

psql -U postgres -h localhost -p 6432 pgbouncer

O PgBouncer tem uma série de comandos para administração, digite o seguinte comando para uma lista completa:

pgbouncer=# show help;
NOTICE:   Console usage DETAIL:
     SHOW HELP|CONFIG|DATABASES|POOLS|CLIENTS|SERVERS|VERSION
     SHOW STATS|FDS|SOCKETS|ACTIVE_SOCKETS|LISTS|MEM
     SHOW DNS_HOSTS|DNS_ZONES
     SET key = arg
     RELOAD
     PAUSE [<db>]
     RESUME [<db&ggt;]
     KILL <db>
     SUSPEND
     SHUTDOWN
SHOW

pgbouncer=#

Para ver uma lista com os bancos que estão sendo acessados:

pgbouncer=# show databases;

   name    |    host   | port |  database   |  force_user  | pool_size   | reserve_pool 
----------------+---------------+--------+---------------+-----------------+--------------+
 pgbouncer |           | 6432 | pgbouncer   | pgbouncer    |           2 |            0
 postgres  | 127.0.0.1 | 5432 | postgres    | postgres     |          20 |            0
 testando  | 127.0.0.1 | 5432 | testando    | postgres     |          20 |            0

(3 registros)

pgbouncer=# Para ver os pools de conexão:

pgbouncer=# show POOLS;

database |   uer      | cl_active | cl_waiting | sv_active | sv_idle | sv_used | sv_tested | sv_login | maxwait 
---------+------------+-----------+------------+-----------+---------+---------+-----------+----------+-----
pgbouncer| pgbouncer  |         1 |          0 |         0 |       0 |       0 |         0 |        0 |    0
postgres | postgres   |         1 |          0 |         1 |       0 |       0 |         0 |        0 |    0
testando | postgres   |         0 |          0 |         0 |       1 |       0 |         0 |        0 |    0

(3 registros)

pgbouncer=# Existem vários comandos, brinque um pouco com eles.

Vamos ver agora como ficou a performance?

Em um teste simples com o PGbench, o resultado, conectando diretamente no PostgreSQL foi o seguinte:

# pgbench -s 1000 -p5432 -Upostgres -C testando
Scale option ignored, using pgbench_branches table count = 1
starting vacuum...end.
transaction type: TPC-B (sort of)
scaling factor: 1
query mode: simple
number of clients: 1
number of threads: 1
number of transactions per client: 10
number of transactions actually processed: 10/10
tps = 51.153250 (including connections establishing)
tps = 96.339114 (excluding connections establishing)


Já conectando pelo PgBouncer, o resultado foi o seguinte:

# pgbench -s 1000 -h localhost -p6432 -Upostgres -C testando
Scale option ignored, using pgbench_branches table count = 1
starting vacuum...end.
transaction type: TPC-B (sort of)
scaling factor: 1
query mode: simple
number of clients: 1
number of threads: 1
number of transactions per client: 10
number of transactions actually processed: 10/10
tps = 153.005799 (including connections establishing)
tps = 168.469288 (excluding connections establishing)


Note que o tps (tuples per second) é de duas a três vezes maior quando a conexão ao banco se dá pelo PgBouncer.

É isso ai pessoal, em um próximo artigo vou falar sobre tunning do PgBouncer.

Um abraço a todos!

Página anterior    

Páginas do artigo
   1. Instalando e configurando o PgBouncer
   2. Botando o PgBouncer pra rodar
   3. Acessando o pseudobanco de administração do PgBouncer e verificando a performance
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Sincronizando Dados do PostgreSQL no Elasticsearch

Automação comercial livre no Slackware 12

PostgreSQL 9.4 - O conceito de Role

PostgreSQL: SGBDOR

HowTo: Como criar Cluster Linux - Ativo/Passivo para Postgres com DRBD, Pacemaker e Corosync

  
Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts