Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a server application running on EC2 behind a Elastic Load Balancer.

I have tested this using Blazemeter - a jMeter based load testing service that also runs on EC2 based infrastructure. The results were good.

However, should I be concerned that it was running with the Amazon network? Is network 'distance' an issue here, should I be seeking a load testing service that does not run within EC2?

share|improve this question
add comment

2 Answers

up vote 2 down vote accepted

"Running within EC2" can mean many, many locations. The load tester might be in us-east-1 but your app in us-west-2, for example. That'd probably be a fair test.

If the load tester is in the same region as your app, the main ramification I can see is that there's going to be very little in-transit time for your data. This means your web server will be able to complete and close connections faster than it would over the public internet.

As an example, if your pages take 100ms to generate, and latency to your average user is 200ms but 10ms within your EC2 region, the average request is going to take 300ms for normal users but 210ms for EC2 load testers. That's a significant difference with lots of requests.

share|improve this answer
    
Yeah - this was my concern. I guess running from another region might be a good enough test. Thank you, +1. I'll leave this for a day and accept this. –  iandotkelly Jan 21 '13 at 17:55
add comment

If your main goal is to test throughput then your test doesn't need to be run from another region. Running from a different region will add latency but latency isn't always a good way to measure application performance. If your application can handle 100 req/s from us-east then it can handle 100 req/s us-west, the difference is that your requests from us-west will take longer because of the added latency. It can't hurt to also execute the tests from another region, but it wont add any more stress to the servers.

share|improve this answer
1  
"If your application can handle 100 req/s from us-east then it can handle 100 req/s us-west, the difference is that your requests from us-west will take longer because of the added latency." If the request takes longer and you're running Apache, that worker is tied up longer, meaning your server can't handle as many requests per second. –  ceejayoz Jan 21 '13 at 18:36
    
Good point, part of the reason I don't use Apache anymore. Though this is a good reason to check from another region. Any application that wastes CPU cycles waiting like Apache is going to behave differently. –  bwight Jan 22 '13 at 14:59
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.