Am 15.08.2011 um 00:03 schrieb Support ChrisP:
>> The server is currently running on Debian Linux Lenny (soon Squeeze) 64-bit, with 8 GB of RAM. Should I expect problems if I try to allow something on the order of 10,000 simultaneous IMAP, POP, SMTP and Webmail connections?
> I don't quite follow, why would you test with 10000 connections for a 500 active users ? But back in the day, linux would crash (and I mean the operating system, not surgemail) if you went over 1000 threads. So some of these paranoid limits are to prevent the operating system failing catastrophically if it hasn't been tuned for the load (or hasn't got enough ram installed). (debugging the system crashing is not nice so it's better if surgemail stops the load before that occurs). A modern linux won't have this problem but may need some system settings adjusted to work (check the handle limit in surgemail_start.sh as that's the primary point of failure)
> SurgeMail will be happy with about 2000 connections on most systems, If you really need to go above that get back to me and we can work on any issues you hit.
Well, I have active users. In my test, 4 connections per account were insufficient. Some clients have multiple machines and/or iOS devices per person. Also, they have project-wide and company-wide IMAP accounts that are accessed by multiple users, pushing the count up further. 10 connections per account seems a reasonable safe upper limit to me, based on my initial testing. I have 500 users on the legacy system, hope to sell more, just bought a 1000 user SurgeMail license, and will be happy to upgrade it as needed. So 10,000 connections seems like something I want to be able to support in the short term.
Most of my clients use Apple Mail, perhaps other IMAP clients act differently. Also, it's worth noting that Apple Mail reacts very poorly to connection errors, so I am very eager to avoid them if at all possible.
Your docs refer to the number of "fopen() handles". I'm guessing this is limited on Linux by the number of TCP sockets that can be opened at one time, which apparently is 32K by default on recent systems, but can be adjusted higher if needed. Or do I need to look at other limits?