Re: too many clients

From: Frank Bax <fbax(at)sympatico(dot)ca>
To: pgsql-php(at)postgresql(dot)org
Subject: Re: too many clients
Date: 2004-12-29 18:13:39
Message-ID: 5.2.1.1.0.20041229125718.00a02520@pop6.sympatico.ca
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-php

At 12:12 PM 12/29/04, Matthew Terenzio wrote:

>On Dec 29, 2004, at 11:38 AM, Mitch Pirtle wrote:
>
>>You got a couple solutions, one of which is getting a connection
>>pooler setup between apache(php) and postgres. SQL Relay
>>(sqlrelay.sf.net) could be a common candidate, as I have used it in
>>the past with great results.
>
>Yes, I have taken a look at that before. It might be a good time to try it.
>
>I don't exactly understand the technical difference between pooled
>connections and persistent ones.
>
>pg_pconnect() is grabbing an existing open connection if one is available.
>
>How is a connection pool more efficient in doing something along these lines?

Have you read the php docs on persistent connections?
http://www.php.net/manual/en/features.persistent-connections.php
pg_pconnect is sometimes used in situations where it does not make sense.

As you mentioned, apache uses numerous child process. A persistent
connection can only be reused if the following things are the same:
- same apache child process requests the connection
- same connect string (ie host, database, user are *all* the same)

If you have a site where there are many databases and/or many users, it is
very easy for apache to retain more persistent connections than your
postgres limit. There are many variables when trying to figure out which
function works better, so simply try it on your own system. If pg_connect
does not add significant overhead, and manages to avoid the problems you
mentioned, then use it instead of pg_pconnect.

I haven't heard of pooled connections, but can only assume they somehow
overcome the problems with pg_pconnect gets out of control - perhaps the
connections are shared across apache child processes.

Frank

In response to

Responses

Browse pgsql-php by date

  From Date Subject
Next Message Gavin M. Roy 2004-12-29 23:32:11 Re: too many clients
Previous Message Mitch Pirtle 2004-12-29 17:21:20 Re: too many clients