On Tue, 2004-08-31 at 11:32 +0100, Simon Waters wrote:
I'm curious are there any main stream IMAP/POP3 servers not using the "process per user" or "thread per user" model? As I wrote a proof of concept server using Java NBIO, for another application once, the idea being to implement a "staged event driven" architecture - but alas it didn't attract much interest. As this would presumably be the smart way to handle high load if context switching became the bottleneck.
Dovecot is going a bit towards making it possible. All network I/O is now nonblocking. Blocking disk reads and waiting for locks are the next problems. Maybe the mail store APIs could be made fully nonblocking and after that it should be pretty easy to make a couple of processes handle all connections.