Re: Persistent connections in PHP
От | Torsten Zühlsdorff |
---|---|
Тема | Re: Persistent connections in PHP |
Дата | |
Msg-id | f9ueqd$jj0$1@registered.motzarella.org обсуждение исходный текст |
Ответ на | Re: Persistent connections in PHP (Hannes Dorbath <light@theendofthetunnel.de>) |
Список | pgsql-general |
Hannes Dorbath schrieb: > On 14.08.2007 23:13, Dmitry Koterov wrote: >> Pconnects are absolutely necessary if we use tsearch2, because it >> initializes its dictionaries on a first query in a session. It's a very >> heavy process (500 ms and more). So, if we do not use pconnect, we waste >> about 500 ms on each DB connection. Too much pain. > > We've been using pconnect for exactly the same reason. Though startup > time for our dictionary is even higher (around 2 seconds). The problem > is that persistent connections in PHP are not clean implemented, they > can get randomly garbage collected. The problem seems well known, though > I'm unaware of any fix. I think it's best to use pgbouncer and plain > connect ATM. Additionally, as mentioned earlier, using pconnect under > the Apache webserver is not a good idea at all, at least not with it's > current architecture. If the dictionary is not too large, you should store it directly in the memory of the server. Therefore you can use Shared Memory (http://www.php.net/shmop, http://de3.php.net/manual/en/ref.sem.php). Another advantage of the solution is, that you have one dictionary for all php-childs - so you do not waste memory by loading the dictionary each request. Greetings, Torsten
В списке pgsql-general по дате отправления: