Hi Amar,
Sorry ... your response fell through the cracks.
I looked at your server.log, but I don't see anything strange. There are four worker threads, each one managing exactly one socket. When the worker threads close, they close their socket. I.e., you should see four sockets in CLOSE_WAIT for a few minutes. I'm guessing that maybe you attached a server.log with a simple case as a demonstration. In general, if you see one socket in CLOSE_WAIT per closed worker thread, then everything is normal. Is that not what you're seeing?
By the way, have you tried increasing the number of file descriptors with ulimit -n?
-Ron