Select a language to translate this page!
Powered by Microsoft® Translator
If you take a look through Dick Craddock’s blog post from earlier this year, A short history of Hotmail, or A peek behind the scenes at Hotmail, by Arthur de Haan, you’ll see that Hotmail has experienced enormous growth since it started 15 years ago. Today it delivers a service that is localized to 59 markets 48 languages and 160 markets [updated; 6/17/10], to over a billion inboxes that generate over two petabytes (2 million gigabytes) of new storage each month, and stores hundreds of petabytes in total. You’ll also see that through the years Hotmail’s back-end architecture has been upgraded and reworked multiple times to allow for this rapid growth and to incorporate advances in hardware. Given the operational challenges and trade-offs required to run a service of this size, developing and managing our systems at scale is second nature to the Hotmail team.
In this video, Hotmail engineering team leads Dick Craddock, Mike Schackwitz, and Phil Smoot (me) discuss the major issues that arise from running such a large service.
Next, let’s dig into how we run Hotmail and how we think about development at scale in general.
For starters, while some of the more than 360 million people who come to Hotmail each month may think about the web UI they see and use, there is a whole lot more going on behind the scenes to run this service.
Hotmail has lots of users, that’s a given. But with that comes the need to support diverse user scenarios. People access Hotmail from just about every country on the planet, in dozens of languages, from multiple devices (phones; PCs), on multiple browsers running on multiple operating systems (Windows, Mac, Linux, Unix). And each month they add new accounts and contacts, create filters, share and download photos, import email from other services, and send and receive tens of billions of messages. For all of this, they look to Hotmail for a fast, secure and seamless experience. To make this happen, there are about 100 different services that Hotmail is running all the time.
These 100 or so different service types run on tens of thousands of servers in data centers around the world. From the ground up, they are grouped into different classes:
Hotmail uses what we call "clusters" to build out and manage all of these different services. A cluster is a management unit of computation, storage, and memory caching servers grouped together in a network unit. Clusters allow building and running the Hotmail operational system in a repeatable and predictable manner at ever-growing scale. The cluster contains everything necessary to manage and run a set of services for a set of users. This design provides good performance, as everything the user needs is in one place. The design also minimizes the impact of system outages to only users on a cluster that might be experiencing a problem. Hotmail has hundreds of clusters, and is adding dozens per year to keep up with the needs of our users. Additional details on cluster architecture can be found at:
If you’re planning to start your own billion-user service, look no further! The Hotmail developers have come up with their top five scaling suggestions – things to keep in mind when writing code for lots of users.
Phil Smoot Partner Development Manager, Windows Live Hotmail
This is lovely!
I wanted to read about the history and architecture of the hotmail.
i also wanted to know more about the hotmail scalibility; thanks for posting an article for same.
still reading article will share my thoughts soon........
but in advance i wanted to say, i love & enjoy browing mails on hotmail thats why all my other providers (gmail etc) mails are being forwarded to hotmail a/c....... :)
I have marked that hotmail is having a good number of professional users rather than other free email services providers and the compatibility to use other personal email id with their messenger is pretty nice.
Phil,
I've finally found a place to place comments and questions (I hope) about Windows Live Hotmail (or whatever the latest name is). I've been a long-term user of MSN/Hotmail using Outlook/Outlook Connector as my client. When I was recently forced to move to Live (and OC 12) I lost the ability to synchronize Outlook categories. I'm in real-estate and these categories have become very important to my business. And the ability to share between my office and home/office had been great with Hotmail/OC before version 12 and Live. Is a fix for this planned or will I have to give up this important feature (at least for me)?
jaustin
with the iPhone there is only POP access meaning messages deleted on the server have to be manually deleted on the iPhone which is so lame.