This article was originally published on the Takipi blog by Alex Zhitnitsky, and with their kind permission, we are sharing it here for Codeship readers. Java/Scala developer? Takipi replaces logging in production JVMs and lets you see the variable state that caused each log error and exception.
How to Choose Which AWS Region You Should Place Your EC2 Instance At
Ladies and gentleman, we’re ready to roll up the curtain on the Takipi Amazon Web Services server speeds benchmark for 2015. This year we’re welcoming a brand new region in Frankfurt, Germany, and crowning the fastest region for this year’s speed test. To do so, we’ve set up instances all around the globe and bumped a 10MB file from side to side to see how long would it take for it to complete its journey.
The testing first started a few years back when we wanted to have more data to help us choose where to host our first cluster of servers (spoiler alert: We’ve chosen Virginia). Since then, we’ve been running the benchmark once per year to get more insight into this rather dark terrain covered by the fog of cloud wars.
New Post: Amazon EC2 2015 Benchmark: Testing Speeds Between #AWS EC2 and S3 Regions http://t.co/lw0cJvNkLI pic.twitter.com/kpI865ADwn
— Takipi (@takipid) August 3, 2015
The Amazon EC2 Server Region Speeds for 2015
[caption id="attachment_2604" align="aligncenter" width="885"][
]4
** Average upload time of 10MB in seconds from EC2 server locations to S3 locations.[/caption]
The 2014 results from the last benchmark
[caption id="attachment_2605" align="aligncenter" width="885"]
** For more results from previous years check out our last blog post about it right here
.[/caption]
Woah, lots of changes! Let’s break it down and take a more insightful look at the data. Overall we’re seeing an average 40 percent improvement across all regions.
Combined Upload Times by EC2 Regions in 2015
Oregon is the fastest region, overtaking California’s seat from last year. With a cumulative upload time of 25 seconds, the Oregon region is the fastest choice. The general guideline is placing your servers as close as you can to your users: If you’re only starting out with AWS, Oregon is a good choice for global coverage.
Sao Paulo is the slowest region to upload from. We’ve seen major improvements in the speeds Australia is getting this year. These improvements now place South America as the slowest AWS region with a cumulative upload time of 46.1 seconds. The Virginia-Sao Paulo route provides pretty good results if you have many users from that region and want to have a good global coverage.
US regions remain the fastest choice for global coverage. The runner ups to Oregon are the two remaining US regions, Virginia and California, with cumulative upload speeds of 27 and 27.2 seconds.
For regions outside the US, Tokyo and Ireland came on top. Lagging a bit behind, Tokyo (30.2 Seconds) and Ireland (31.7 Seconds) were the best spots to place your server outside the US.
The new Frankfurt region is the slowest in Europe. Ireland beats Frankfurt in all the tests. We don’t see a reason why you should host your servers there at the moment. Even the Ireland-Frankfurt link took just less than a second.
Unsurprisingly, the speeds within the same region were the fastest. Averaging 0.37 seconds, the in-region speeds were pretty much the same for every server we tested. This results is 43 percent better than the in-region results we’ve seen last year, 0.65 seconds.
Slowest Upload Speeds from EC2 to S3 in Each Region
The slowest upload speed recorded was Sao Paulo to Singapore. It took almost 9 seconds to complete a transfer between these two regions. Routing this traffic through Virginia might actually be a better choice.
The region with the minimum maximal time to complete a transfer is Oregon. If you’re looking at “worst case” performance scenarios, Oregon wins again. The slowest upload speed that we recorded was 4.32 seconds to Sydney.
Average Upload Times from EC2 to S3, 2013 vs 2014 vs 2015
The funny thing here is that on last year’s test, we had to remove Australia to make sense of the graph. The speeds in that region were so slow that we couldn’t compare the other regions because they messed up the scale the chart. This year, Australia is making a fierce comeback. So fierce that we have to remove results from previous years to make it readable.
Let’s clear up the graph by removing the 2013 and 2014 results from Sydney
We see an average improvement of 40 percent across all AWS compared to last year. Amazon speeds are getting better year by year with better infrastructure, and more servers across more availability zones within regions that help handle the pressure. With a 32 percent improvement from 2013 to 2014, and 40 percent between 2014 and 2015, AWS is getting much more faster.
The Groundwork
To run this test we’ve set up EC2 instances (m3.xlarge) and S3 buckets in all Amazon AWS server regions currently available and timed how long it would take to transfer 10MB in each direction.
We went for a dozen rounds, removing best and worst scores before averaging. This left us with 10 valid scores to average, which seems to us like a fair number. There are currently nine available AWS regions -- three in the US (Oregon/California/Virginia), one in South America (Sao Paulo), two in Europe (Dublin and a new region in Frankfurt), two in Asia (Singapore/Japan), and one in Australia. The new region in China is not publicly available yet, so it wasn’t included in the test (for more information about speeds in China, check out this blog post by Adam Winn from OPSWAT).
The test was built using the AWS Java SDK, and it’s available on GitHub. You’re welcome to fork, clone, review, or run the experiment yourself to compare results.