DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
  1. DZone
  2. Software Design and Architecture
  3. Cloud Architecture
  4. Amazon EC2 2015 Benchmark: Testing Speeds Between AWS EC2 and S3 Regions

Amazon EC2 2015 Benchmark: Testing Speeds Between AWS EC2 and S3 Regions

Finally, an answer to the age old question: How do I decide which AWS region I should place my EC2 instance at?

Alex Zhitnitsky user avatar by
Alex Zhitnitsky
·
Nov. 05, 15 · Analysis
Like (5)
Save
Tweet
Share
5.13K Views

Join the DZone community and get the full member experience.

Join For Free

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.

java / scala developer? takipi replaces logging in production jvms and lets you see the variable state that caused each log error and exception.

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 cloud wars fog of war.

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

aws 2015 ec2 speed test results

** average upload time of 10mb in seconds from ec2 server locations to s3 locations.

the 2014 results from the last benchmark:

aws 2014 speed test results

** for more results from previous years check out our last blog post about it right here .

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% improvement across all regions.

combined upload times by ec2 regions in 2015

aws 2015 combined upload times

oregon is the fastest region, overtaking california’s seat from last year. with an accumulative upload time of 25 seconds, the oregon region is the fastest choice. the general guideline is placing your servers the closest 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 southern america as the slowest aws region with an accumulative 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 2 remaining us regions, virginia and california. with accumulative 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 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% better than the in-region results we’ve seen last year, 0.65 seconds.

slowest upload speeds from ec2 to s3 in each region

aws 2015 speed test - slowest results by region

the slowest upload speed recorded was sao paulo to singapore. it took almost 9 seconds to complete a transfer between these 2 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

aws avg upload times year by year

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:

aws speed test results average upload times (without past results from sydney)
we see an average improvement of 40% 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% improvement from 2013 to 2014, and 40% 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 9 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.

have additional insights to share? let us know in the comment section below.

fredjava

15 tools to use when deploying new code to production – view tool list

java 8

java 8 exceptions have never been so beautiful – try takipi for java 8

java / scala developer? takipi replaces logging in production jvms and lets you see the variable state that caused each log error and exception.

AWS Amazon Web Services Upload

Published at DZone with permission of Alex Zhitnitsky, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Beginners’ Guide to Run a Linux Server Securely
  • 7 Awesome Libraries for Java Unit and Integration Testing
  • Kubernetes vs Docker: Differences Explained
  • Easy Smart Contract Debugging With Truffle’s Console.log

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: