PgDay Campinas 2016 - PgBouncer
-
Upload
felipe-santos -
Category
Data & Analytics
-
view
69 -
download
2
Transcript of PgDay Campinas 2016 - PgBouncer
![Page 1: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/1.jpg)
PgBouncer
Felipe Pereira
![Page 2: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/2.jpg)
SEGURANÇA
DISASTERRECOVERY
POOL DECONEXÕES
OPENSOURCE
DESEMPENHO
PGBOUNCER
ARQUITETURA
![Page 3: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/3.jpg)
Segurança
![Page 4: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/4.jpg)
Segurança
Usuário possui a senha do banco de dados
Usuário acessa o IP do banco de dados
Usuário é Super User
![Page 5: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/5.jpg)
Segurança
Usuário não possui a senha do banco de dados
Usuário não acessa o IP do banco de dados
Usuário não é Super User
![Page 6: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/6.jpg)
SegurançaArquitetura de acesso
![Page 7: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/7.jpg)
![Page 8: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/8.jpg)
SegurançaNo Banco de Dados:
No .userlist:
![Page 9: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/9.jpg)
Segurança
No pgbouncer.ini:
![Page 10: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/10.jpg)
![Page 11: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/11.jpg)
Segurança
No pgbouncer.ini:
![Page 12: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/12.jpg)
Disaster Recovery
![Page 13: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/13.jpg)
Disaster Recovery
Single Point of Failure
O ponto único de falha é responsável pela fraqueza de toda a estratégia de DR e por isso deve ser evitado.
![Page 14: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/14.jpg)
Disaster Recovery
![Page 15: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/15.jpg)
![Page 16: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/16.jpg)
Configuração padrão:
![Page 17: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/17.jpg)
![Page 18: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/18.jpg)
Nova configuração:
Reload Online:
![Page 19: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/19.jpg)
Pool de Conexões
![Page 20: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/20.jpg)
Pool de Conexões
Desperdício de conexões
Desperdício de recursos
Escalonamento
Performance
![Page 21: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/21.jpg)
Desperdício de Conexões
![Page 22: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/22.jpg)
Desperdício de Recursos
![Page 23: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/23.jpg)
Escalonamento
![Page 24: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/24.jpg)
Performance
-10% / +40%
![Page 25: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/25.jpg)
Session x Transaction x Statement
![Page 26: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/26.jpg)
Transaction
Tabelas temporárias que guardam estado de sessão
CURRVAL de Sequences utilizadas em transações anteriores
Plugins/Extensions
![Page 27: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/27.jpg)
Cache de Conexões
Tráfego de rede
Um ponto a mais na arquitetura
Overhead de iniciar uma conexão
Autenticação
Criação de processo no servidor
![Page 28: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/28.jpg)
Cache de Conexões
0.03ms 0.06ms 0.74ms
![Page 29: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/29.jpg)
ONDE INSTALAR?
![Page 30: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/30.jpg)
Onde Instalar?
731
694
739
406
![Page 31: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/31.jpg)
CONFIGURAÇÕES
![Page 32: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/32.jpg)
Configurações
Max_Client_ConnÉ o máximo de client connections permitido da aplicação para o
PgBouncer. Lembrar de configurar também o file descriptor limit.
Default_Pool_SizeO tamanho máximo do pool para cada banco de dados configurado.
Min_Pool_SizeÉ a quantidade de conexões que o Bouncer
Max_Db_ConnectionsNúmero máximo de conexões ao servidor de banco de dados,
independentemente da quantidade de pools configurada para o mesmo db/server.
![Page 33: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/33.jpg)
Configurações
Server_LifetimeO PgBouncer irá matar as conexões que existirem por mais tempo do
que o configurado neste parâmetro (em segundos).
Server_Idle_TimeoutSe a conexão estiver Idle por mais do que o configurado neste
parâmetro, a mesma será encerrada.
Client_Login_TimeoutA conexão do cliente ao PgBouncer será encerrada se o login não for
feito dentro do tempo configurado (em segundos).
![Page 34: PgDay Campinas 2016 - PgBouncer](https://reader031.fdocumentos.tips/reader031/viewer/2022030309/58f2485d1a28ab86478b45f7/html5/thumbnails/34.jpg)
Configurações Perigosas
Query_TimeoutQueries que estiverem executando por mais tempo do que o
configurado, serão encerradas. Lembre-se de relatórios, cargas de dados, etc.
Query_Wait_TimeoutAo ser enfileirada para esperar a execução, a query irá esperar o tempo
configurado neste parâmetro, após isso será morta. Se desabilitado, as queries esperam em fila indefinidamente.
Client_Idle_TimeoutSe a conexão entre cliente e PgBouncer estiver idle por este tempo, a
conexão será derrubada.
Idle_Transaction_TimeoutSe a conexão entre PgBouncer e DB estiver em “idle in transaction” por
este tempo, a conexão será derrubada.