top | item 15873443

Distributed Performance Testing in the Cloud with JMeter and AWS

45 points| mfolaron | 8 years ago |artofsoftwaredevelopment.com | reply

11 comments

order
[+] jacques_chester|8 years ago|reply
For those familiar with BOSH, Pivotal engineers built "Tornado" for load testing. It's a BOSH release of JMeter with some convenient dials.

Since it's BOSH, you can deploy to AWS, GCP and Azure without fuss. The difference between running one worker, ten workers or a thousand workers is a line of YAML and how much you're prepared to pay.

There are some blog posts:

"Half a Million Concurrent/Distributed JMeter Users with BOSH ... in 10 Minutes" (http://engineering.pivotal.io/post/jmeter-bosh-usecase/)

"BOSH + Apache JMeter(TM) = Tornado for Apache JMeter(TM)" (http://engineering.pivotal.io/post/jmeter-bosh-release/)

The release itself: https://github.com/jamlo/jmeter-bosh-release

Disclosure: I work for Pivotal, BOSH is definitely one of our favouritest things.

[+] davidw|8 years ago|reply
Haven't had occasion to use it yet, but I've chatted some with the founders of http://nouvola.com/ - bright women and it looks like they've done a good job with their product. Once you're at that kind of scale, maybe a prepackaged solution is worth the savings in time.
[+] djKianoosh|8 years ago|reply
I recently looked at Locust, and even though I knew practically zero python and have many years (tears?) of Java background, I found Locust, especially with a little docker-compose 17-liner, amazingly productive. YMMV
[+] justicezyx|8 years ago|reply
"Super-human agent on Dota2 1v1"

Good to say they accurately define the situation, not something like "Super-human agent defeating world's best Dota2 player"

[+] lyonlim|8 years ago|reply
We use Redline13 to help spin up load generators for stress and performance testing.
[+] justizin|8 years ago|reply
> Here is the problem, JMeter uses Java RMI (Remote Method Invocation) to communicate to its slaves, but these connections require all machines to be on the same subnet and this is not feasible with EC2 instances.

Incorrect with VPC..

Also, could we stop using the term 'slave' to refer to distributed compute or storage nodes?

[+] victor106|8 years ago|reply
“Also, could we stop using the term 'slave' to refer to distributed compute or storage nodes?”

Sorry... I don’t get what is wrong with it? We use that word to refer to distributed compute a lot in my org.

[+] mfolaron|8 years ago|reply
>Incorrect with VPC..

VPCs won't work for multi region penetration tests. As far as I remember subnets cannot span multiple availability zones. I should have probably mentioned that.

>Also, could we stop using the term 'slave' to refer to distributed compute or storage nodes?

That I can't argue with...

[+] ababab|8 years ago|reply
>Also, could we stop using the term 'slave' to refer to distributed compute or storage nodes?

Agreed, I still stick with the old Loadrunner nomenclature "loadgen"