Why pgpool TPS is lowest versus postgresql direct connections?

From: "Lazaro Garcia" <lazaro3487(at)gmail(dot)com>
To: <pgpool-general(at)pgpool(dot)net>, <pgsql-admin(at)postgresql(dot)org>
Subject: Why pgpool TPS is lowest versus postgresql direct connections?
Date: 2017-02-08 16:27:42
Message-ID: 002501d28228$46ff87e0$d4fe97a0$@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin

After installed Pgpool with 2 postgresql nodes with streaming replication, I
have noticed that access directly to postgresql is more efficient than
through pgpool.

I supposed that load balance could increase the transactions per second
executed because each node could receive more load, but the results shown
below are not expected.

This is the setup:

Pgpool 3.6.1 whit connection pooling, streaming replication mode and load
balancing mode.

2 PostgreSQL server 9.6.1 whit streaming replication.

For the tests I used sysbench and pgbench.

The results of sysbench:

Concurrent Users

1

20

50

100

PostgreSQL (TPS) Direct

1166

20936

25743

27344

Pgpool (TPS)

2240

7628

7013

6135

The results of pgbench


1

20

50

100

PostgreSQL (TPS) Direct

1403

6805

6194

5726

Pgpool (TPS)

511

5430

5528

4705

As you can see in both cases even with load balance, the total transactions
per second are lower.

Is this the expected behavior. Is there any way to allow more TPS when
pgpool is used?

There are other publications with similar results:

https://www.os3.nl/_media/2011-2012/courses/lia/rory_breuk_gerrie_veerman_-_
report.pdf (page 28)

http://www.mail-archive.com/pgpool-general(at)pgfoundry(dot)org/msg03326.html

Regards

Browse pgsql-admin by date

  From Date Subject
Next Message Ganesh Kannan 2017-02-08 20:56:11 Re: Recovery from Transaction wraparound failure
Previous Message Tom Lane 2017-02-08 16:13:47 Re: Recovery from Transaction wraparound failure