Re: [HACKERS] PHP and PostgreSQL - Mailing list pgsql-interfaces

From Karl DeBisschop
Subject Re: [HACKERS] PHP and PostgreSQL
Date
Msg-id 3A4A1C90.B8E939E5@debisschop.net
Whole thread Raw
In response to RE: [HACKERS] PHP and PostgreSQL  (Matthew <matt@ctlno.com>)
Responses Re: Re: [HACKERS] PHP and PostgreSQL
List pgsql-interfaces
Matthew wrote:
> 
>         I have been asked by the major PHP developer Rasmus Lerdorf to see
> if
>         the PostgreSQL/PHP interface needs any improvements.
> 
>         Is the current PostgreSQL interface module in PHP adequate?  Does it
>         support all the current libpq features?
> 
> The only problem we have run into (and I have heard of others having this
> problem also) is with persistent connections.  I have seen discussion on
> persistent connection problems but I'm not sure the problem was ever
> resolved.  The problem we have seen is that when using persistent
> connections the web server doesn't seen to reuse the connections or somthing
> to that effect.  The result being that we eventually use up our postgres
> limit of 48 connections and nothing can connect to postgre anymore.  It is
> possible that this is a configuration problem that we haven't sufficiently
> investigated, but I meniton it because I have heard other talk of this.
> Anyone have more information?

Persistent connections behave exactly as advertised. Each apache process
sets up and maintains persistent connections as needed. The problem is
that for a typical web server, there are so many subprocesses that
persistent connections are probably consume more resources than they
save, unless they are combined with connection pooling across ALL the
apache processes.

Implementation of connection pooling is by far the most serious
shortcoming of the current implementation, IMHO. 

I would dearly love to see this addressed as our postgresql database
sees connections from about 300 servers for 6 databases. Since our
postgresql server cannot support 1800 simultaneous active backends,
persistent connections are useless without pooling. So instead we
initiate 10 or more backends every second for generally very simple
queries. Most of the queries are pretty simple, so I would not be at all
surprised if we sent more system resources opening connections than we
do actually answering queries

-- 
Karl DeBisschop                      kdebisschop@alert.infoplease.com
Learning Network/Information Please  http://www.infoplease.com
Netsaint Plugin Developer            kdebisschop@users.sourceforge.net


pgsql-interfaces by date:

Previous
From: Cedar Cox
Date:
Subject: Re: textcat() and ODBC driver
Next
From: Thomas Lockhart
Date:
Subject: Re: ODBC Driver Update...