One of the most common questions customers ask is how does windows azure perform.
Well Microsoft published a series of benchmarks in an excellent web site called azurescope.
The thing is azurescope is going down on January 15th 2012 so I decided to publish these benchmarks here and make sure they will be available to the public.
Let us discuss tables write throughput.
This test measures the ability of Windows Azure Table Service to handle write requests from simultaneous clients.
- Throughput increases with the increase in number of concurrent clients (NumberOfWorkers * ThreadsPerWorker), reaches a maximum limit and then decreases with further increase in the number of concurrent clients. You may have to increase the ServicePointManager.DefaultConnectionLimit for multiple threads to establish more than 2 concurrent connections with the storage.
- Using multiple partitions improves throughput when there are many concurrent clients.
- Bigger batch sizes generally provide better throughput. However, if there are too many concurrent clients, smaller batches may be more performant. For example, batch size of 50 outperforms batch size of 100 for more than 21 workers.