sql >> Database teknologi >  >> RDS >> PostgreSQL

Forbindelsespooling med Pgbouncer på PostgreSQL 9.0

Forbindelsespooling, hvorfor vi går efter forbindelsespooling i PostgreSQL, Når din applikation kræver et meget stort antal samtidige forbindelseshits, skal du nærme dig det, fordi forbindelsespuljen sidder mellem din applikation og databasen.

Idéen bag forbindelsespuljen er, at du har nok forbindelser til at bruge alle de tilgængelige ressourcer, og alle indkommende anmodninger genbruges uden at afbryde databaseforbindelsen og holde dig klar til at bruge en ny forbindelse.

pgbouncer er letvægts forbindelsespooler. pgBouncer kører som en enkelt proces og afføder ikke en proces pr. forbindelse, som er afhængig af biblioteket ved navn libevent til forbindelsespooling.

pgbouncer-opsætningen på PostgreSQL 9.0 er meget enkel, men der er små ændringer med den seneste version, du skal bruge for at oprette manuel pg_auth-fil. pgbouncer bruger pg_auth-filen til brugergodkendelse. Tidligere version af PostgreSQL 9.0 kan du finde pg_auth-filen under $PGDATA/global/pg_auth, nu i den seneste version er denne fil blevet fjernet og placeret i pg_catalog som tabel 'pg_auth'.

opsætning af pgbouncer:

1. Download først libevent-biblioteket til pgbouncer.
Download link til libevent:
http://www.monkey.org/~provos/libevent-2.0.12-stable.tar.gz

tar -xvf libevent-2.0.12-stable.tar.gz

cd libevent-2.0.12-stable
./configure
make
make install

2. Download den seneste pgbouncer tar og konfigurer til din PostgreSQL 9.0.
http://pgfoundry.org/frs/download.php/2912/pgbouncer-1.4.tgz

tar -xvf pgbouncer-1.4

cd pgbouncer-1.4
./configure --prefix=/opt/PostgreSQL/9.0/bin
make
make install

3. Opret en libevent-i386.conf fil i mappen /etc/ld.so.conf.d

vi /etc/ld.so.conf.d/libevent-i386.conf

/usr/local/lib
:wq!

4. Kør ldconfig for at anvende nye ændringer.

#ldconfig

5. Skift ejerskabet af pgbouncer-værktøjet i PostgreSQL binær til postgres-bruger.

chown -R postgres:postgres /opt/PostgreSQL/9.0/bin/bin/pgbouncer

6. Opret pgbouncer_auth-filen til brugergodkendelse.

7. Opret pgbouncer.ini-fil med postgres brugertilladelse under mappen /etc.

8. Start pgbouncer

-bash-4.1$ ./pgbouncer -d /etc/pgbouncer.ini

2011-08-14 11:42:00.925 1949 LOG File descriptor limit: 1024 (H:1024), max_client_conn: 1000, max fds possible: 1010

9. Opret forbindelse til databaserne ved hjælp af pgbouncer

10. Få hjælp:Opret forbindelse til pgbouncer-databasen og få hjælp.

$ psql -p 6432 -U postgres pgbouncer

pgbouncer=# show help;

For bedre forståelse af pg_auth kan du finde nedenstående link ved 'depesz'.
http://www.depesz.com/index.php/2010/12/04/auto-refreshing-password-file-for- pgbouncer/

Skriv dine kommentarer, som er meget værdsat.


  1. Hvad er PostgreSQL?

  2. Kan ikke returnere resultater fra lagret procedure ved hjælp af Python-markøren

  3. MySQL Tutorial - En begyndervejledning til at lære MySQL

  4. Få optegnelser fra sidste måned i SQL server