The Architecture of Mailinator (2007)
Surprised to see this here now after 11 years.<p>Needless to say, this is incredibly out of date. Mailinator now runs across several servers with a real-time websocket system tied to Redis channels for incoming emails. The multiple server system is more for fault-tolerance than scaling issues.<p>The Websocket-to-redis connection allows incoming emails to be available the instant they arrive (fully) at Mailinator. Instantly - no polling front-end or otherwise. Public email storage is still in-memory with a system that chunks emails into common parts and reuses them. A reference counting garbage collector cleans them up once no email in the system is still using that part. I tried compression a million different ways but nothing beat reusing parts of emails.<p><a href="http://mailinator.blogspot.com/2012/02/how-mailinator-compresses-email-by-90.html" rel="nofollow">http://mailinator.blogspot.com/2012/02/how-mailinator-compre...</a><p>The 2007 article is a valid picture of things then, but the system has come a long, long way since that time.