From: | Frank Joerdens <frank(at)joerdens(dot)de> |
---|---|
To: | pgsql-php(at)postgresql(dot)org |
Subject: | Re: persistent vs. non-persistent |
Date: | 2001-10-02 09:21:17 |
Message-ID: | 20011002112117.A31207@rakete.joerdens.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-php |
On Mon, Oct 01, 2001 at 06:56:37PM -0400, Mitch Vincent wrote:
> I'm not sure about the internal workings, I see what you mean and will await
> your finding with great interest!
>
> -Mitch
[ . . . ]
> > I don't understand why apache (or PHP) doesn't see that it has a
> persistent
> > database connection open to use.
> >
> > I'm checking the PHP PGSQL extensions at this moment.
> > More info later....
> >
> > Saludos.... ;-)
I keep having problems too; I think because I never quite managed to
figure out the mechanism either. Sometime last year someone mentioned
that the php.ini parameters
pgsql.max_links
pgsql.max_persistent
are meant to be understood as /per Apache child/; so if you have, say, 5
Apache children waiting for a request, and
pgsql.max_persistent = 2
you could have up to 10 open connections. If an apache child which does
not have an open connection gets a request, it will open a new
connection, obviously. So if 4 of the 5 Apache children have open
connections, but the 5th gets the next request, a new connection will be
opened. I am not sure about what happens when a child which already has
an open connection gets a new request. Hypothesis: It depends on the
database. Say you have 3 distinct databases on your server and your
php.ini parameter
pgsql.max_persistent = 2
Now let's say you have 10 open Apache children, each of which has a
connection to databases #1 and #2. Now requests to databases #1 and #2
will be answered, but not to #3: You'll get the error message:
Warning: PostgreSQL: Too many open persistent links (2)
My tests seem to confirm this.
It would seem to follow that you only need as many persistent
connections per Apache child as you have databases from which you want
to serve http requests.
Regards, Frank
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew McMillan | 2001-10-02 10:27:07 | Re: persistent vs. non-persistent |
Previous Message | Mitch Vincent | 2001-10-01 22:56:37 | Re: persistent vs. non-persistent |