I would ask for your kernel version. uname -a please?
> sure, and thanks for you answer Flavio...
>
> uname -a
> Linux SERVIDOR-A 2.6.18-92.el5 #1 SMP Tue Apr 29 13:16:15 EDT 2008 x86_64 x86_64 x86_64 GNU/Linux
>
> cat /etc/redhat-release
> Red Hat Enterprise Linux Server release 5.2 (Tikanga)
>
I had the same problem you're saying with Debian Etch 2.6.18 when the system needed more then 1000 connections.
>
>
>
> It was possible to make the context work better with 2.4.24 with kswapd patched around here. 1600 connections working fine at this moment.
> 2.4 is very old, or not?
My mistake. It is 2.6.24
We had to apply the kswapd patch also. It's important specially if you see your system % going as high as 99% in top and loosing the machine's control. I have read something about 2.6.28 had this patch accepted in mainstream.
>
> Try to lower your memory requirements too. Linux kernel needs some space to page and scale up. Install some more memory otherwise.
>
> how much?
> already I have a lot of memory installed in the server 128GB.
Here we have 16GB. I had to limit PostgreSQL memory requirements (shared_buffers + max_connections * work_mem) to about 40% RAM. effective_cache_size was not an issue and about 30% of RAM is working fine. Of course the cache is a matter of your context.
Since we have fast queries with low memory requirements for sorting or nested loops, 1.5MB for work_mem was enough around here. 2GB of shared buffers worked like a charm but it's too low for the indexes I work with and I'm planning to increase it when I have more RAM.
Flavio