postgres - could not fork new process for connection

eduard615

Есть сервер под довольно большой нагрузкой. В частности, надо, что бы он
держал одновременное около 150 коннектов.
Однако максимум получается 129, далее сыплется
"could not fork new process for connection: Resource temporarily unavailable"
опции постгресса основные:

max_connections = 200
superuser_reserved_connections = 2
shared_buffers = 20000
max_fsm_relations = 100
max_fsm_pages = 30000
max_locks_per_transaction = 256
wal_buffers = 32

[dbserver]# su - postgres -c "ulimit -a" -s /bin/sh
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 16384
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) 131072
cpu time (seconds, -t) unlimited
max user processes (-u) 384
virtual memory (kbytes, -v) unlimited
[dbserver]# ipcs -l
....
------ Semaphore Limits --------
max number of arrays = 128
max semaphores per array = 250
max semaphores system wide = 32000
max ops per semop call = 32
semaphore max value = 32767
 [dbserver]# procinfo
Linux 2.4.22-std-up-alt17 (mash) (gcc 2.96 20000731 ) Wed Feb 4 22:52:03 MSK 2004 1CPU [dbserver]

Memory: Total Used Free Shared Buffers Cached
Mem: 1033788 774084 259704 0 32000 460848
Swap: 1244996 5036 1239960

Bootup: Tue Jan 11 17:23:43 2005 Load average: 0.70 1.55 1.48 1/97 11790

user : 1d 16:44:40.53 27.9% page in : 5464915 disk 1: 511915r 9468501w
nice : 0:00:00.00 0.0% page out:117376647
system: 20:55:29.35 14.3% swap in : 940
idle : 3d 12:37:21.59 57.8% swap out: 6096
uptime: 6d 2:17:31.46 context : 53063152
не понимаю, что еще этой скотине не хватает
подскажите, в какую сторону хотя бы копать

Marinavo_0507

strace попробуй сделать

sergey_m

Странное наблюдение, не претендующее на глубокий смысл: 384 == 128 * 3
Оставить комментарий
Имя или ник:
Комментарий: