**>Date: Sun, 22 Jan 2006 22:22:18 +0700 **>From: adi <[EMAIL PROTECTED]> **>To: Ady Wicaksono <[EMAIL PROTECTED]> **>Subject: Re: Kannel HTTP Too many open files **>In-Reply-To: <[EMAIL PROTECTED]> **>Cc: [email protected] **> **>On Sat, Jan 21, 2006 at 06:13:38PM +0700, Ady Wicaksono wrote: **>> 2006-01-21 18:02:51 [24505] [2] ERROR: HTTP: Error accepting a client. **>> 2006-01-21 18:02:51 [24505] [2] ERROR: System error 24: Too many open files **>> **>> How to solve? **>> **>> I have seet this kernel vars on Linux enough **>> **>> $ cat /proc/sys/fs/file-max **>> 1000000 **> **>check your system filediscriptor limit: **> **>$ ulimit -n **> **>you'd need to raise your system fildescriptor limit from your shell, i.e **>put that 'ulimit command' into kannel startup script, e.g: ulimit -n **>8192. only root could raise system resource limit.
You will also need to properly close your network file descriptors after using them. Most likely, the appplications communicating with Kannel is using HTTP/1.1 protocol which allows persistent connections. As a result, Kannel will not close the network connection after returning a HTTP response. If the application is Java-based, it is exacerbated by standard Java practices of not explicitly closing datastreams and instead waiting for garbage collection to close the network connection. If your app is Java-based, I would suggest you explicitly close your datastreams. See ya... d.c.
