Solutions 1:
Set system-level file descriptor limits:
# check the current process-level file descriptor limit
$ more /proc/sys/fs/file-max # or ulimit -n
# if its lower than 65000
$ echo 65000 > /proc/sys/fs/file-max
# adjust no. of processing units available
$ echo "10000" > /proc/sys/fs/nr_open
# assuming you are running linux kernel 2.2 adjust no. of maximum files that can be stored in file system
$ echo 65535 > /proc/sys/fs/inode-max
# reboot server
$ reboot