Hi all, In case someone else is trying to use Jmeter to test their web environment in amazon's ec2 using the default load balancer (ELB), I've painfully learned some lessons I'd like to pass on in a consolidated form: 1.) The ELB is a name, not IP, and suffers from caching. Make sure you use "-Dsun.net.inetaddr.ttl=0" when starting JMeter 2.) For a given ELB IP, there seems to be a static mapping of client IP <-> backend instance. This is a slightly complicated statement that assumes a some knowledge of how amazon in general, and ELBs in particular, work. If it's still up, this page: http://www.shlomoswidler.com/2009/07/elastic-in-elastic-load-balancing-elb.html has pretty much everything you need to know. But the basic idea is that the ELB is supposed to balance the inbound traffic to the currently known & healthy backend instances (e.g. the boxes you actually control). At any given time, the ELB DNS name resolves to a pool of ELB IP addresses (which grows or shrinks based on load). The TTL on an ELB name (which is owned & controlled by amazon, e.g. loadbalancer123.amazon.com) is 60 seconds. And again, in practice I've found the load balancing to be per client/ELB IP, rather than per request.
Specifically, the behavior I've seen in JMeter is: -I start a test that generates a small amount of load forever -I check backend instances, and all load in on one box -On the JMeter box, I run "dig mydomain.com" and watch the TTL count down from 60 to 0 -If the ELB IP changes, all load moves to a different backend instance (and if the ELB IP stays the same, it stays in the same place) will