High-performance connection pool for PostgreSQL
pgagroal
is a high-performance protocol-native connection pool for PostgreSQL.
Pronounced: p-g-a-gro-al, named after Agroal in Portugal.
See Getting Started on how to get started with pgagroal
.
See Configuration on how to configure pgagroal
.
See Performance for a performance run.
pgagroal
makes use of
pgagroal
will work with any PostgreSQL compliant driver, for example
pgjdbc, Npgsql and pq.
See Architecture for the architecture of pgagroal
.
pgagroal
requires
On Rocky Linux (and similar) operating systems, the dependencies
can be installed via dnf(8)
as follows:
dnf install git gcc cmake make \
libev libev-devel \
openssl openssl-devel \
systemd systemd-devel \
python3-docutils \
libatomic \
cjson cjson-devel
Please note that, on Rocky Linux, in order to install the python3-docutils
package (that provides rst2man
executable), you need to enable the crb
repository:
dnf config-manager --set-enabled crb
Alternatively to GCC, clang 8+ can be used.
The following commands will install pgagroal
in the /usr/local
hierarchy
and run the default configuration.
git clone https://github.com/agroal/pgagroal.git
cd pgagroal
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install
/usr/local/bin/pgagroal -c /usr/local/etc/pgagroal/pgagroal.conf -a /usr/local/etc/pgagroal/pgagroal_hba.conf
See RPM for how to build a RPM of pgagroal
.
The following commands will create a DEBUG
version of pgagroal
.
git clone https://github.com/agroal/pgagroal.git
cd pgagroal
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Debug ..
make
cd src
cp ../../doc/etc/*.conf .
./pgagroal -c pgagroal.conf -a pgagroal_hba.conf
Remember to set the log_level
configuration option to debug5
.
Contributions to pgagroal
are managed on GitHub.com
Contributions are most welcome !
Please, consult our Code of Conduct policies for interacting in our community.
Consider giving the project a star on GitHub if you find it useful. And, feel free to follow the project on Twitter as well.