Re: persistent vs. non-persistent

Поиск
Список
Период
Сортировка
От Frank Joerdens
Тема Re: persistent vs. non-persistent
Дата
Msg-id 20011002112117.A31207@rakete.joerdens.de
обсуждение исходный текст
Ответ на Re: persistent vs. non-persistent  ("Mitch Vincent" <mvincent@cablespeed.com>)
Ответы Re: persistent vs. non-persistent  (Andrew McMillan <andrew@catalyst.net.nz>)
Список 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

В списке pgsql-php по дате отправления:

Предыдущее
От: "Mitch Vincent"
Дата:
Сообщение: Re: persistent vs. non-persistent
Следующее
От: Andrew McMillan
Дата:
Сообщение: Re: persistent vs. non-persistent