Re: Postgresql with max_connections=4096
От | denis@edistar.com |
---|---|
Тема | Re: Postgresql with max_connections=4096 |
Дата | |
Msg-id | 42E74458.70704@edistar.com обсуждение исходный текст |
Ответ на | Re: Postgresql with max_connections=4096 (Richard Huxton <dev@archonet.com>) |
Ответы |
Re: Postgresql with max_connections=4096
Re: Postgresql with max_connections=4096 |
Список | pgsql-general |
Richard Huxton wrote: > denis@edistar.com wrote: > >> We have a postgresql server configured with max_connections=4096. >> We have such a high number of max_connections because there are 8 web >> servers connected to the database and all use persistent connections. >> Each web server can have 256 max clients and 2 connection strings, so >> the max connections to the db is 256 * 8 * 2=4096. > > > The one-word answer is "pgpool" http://pgpool.projects.postgresql.org/ > You don't really want them all using persistent connections directly > to the DB. > Already checked. We set a machine with only pg_pool installed as a fronted to the real db. If I disable persistent connections and I use pg_pool with 4096 preforked clients, the load of the pg_pool server goes very high and the takes down also the real database server. Maybe should I try installing pg_pool direcly into the database server to avoid network traffic? >> To start the postgresql, I must to do some kernel extra configuration: >> >> kernel.shmmax = 1165063808 >> kernel.sem=512 64000 100 512 >> >> and the parameters i changed other than max_connections in the >> postgresql.conf are: >> >> - shared_buffers = 131072 > > > That's a *very* big shared_buffers value. Try reducing it by a factor > of 10 and reading the "performance tuning" article here: > http://www.varlena.com/varlena/GeneralBits/Tidbits/index.php Already read. I put 25% of total memory as that specified by Bruce Momjian performance howto but now i'm lowering 65536 > > Sounds like a BEGIN being re-issued alright. Solution - fix your > application(s) and don't use persistent connections (or if you do, > make sure you rollback any pre-existing transactions and issue any > relevant SET commands). > If that was the problem, I should obtain always that error but I obtain that error only after two/three hours of testing. Thank you for your help, Denis
В списке pgsql-general по дате отправления: