1

I'm trying to load test nginx running on AWS. I need to try to optimise it to handle 1Gbps of inbound traffic.

Currently I've got it to peak at 85Mbit/s by running nginx on an m1.large with 4 other machines hitting it by using ab with -i (for head requests) -k (keepalives) -r (ignore failed requests) -n 500000 -c 20000.

I'm struggling to generate more than 85 Mbit/s traffic from 4 machines, yet when I do scp a large file I get nearly 0.25Gbit/s of traffic going over the network.

Are there any tools or approaches that I could use to load test nginx that might generate more load? I'm only interested in inbound traffic, so perhaps a DoS tool could help if it chucks away responses?

I'm hitting a very small (40 byte) static asset, and have peaked at handling 50K concurrent connections and getting 25k reqs/s when just using a single load generator machine.

andy
  • 159
  • 1
  • 10
  • ulimit = 100k___ – andy Nov 30 '12 at 12:32
  • (Old question has been bumped) You can't use DDOS tools against AWS or your account could be closed by AWS. 1Gbps inbound would be a crazy amount of traffic, only way to get there I suspect is with many parallel file uploads / form posts with files. When hitting 40b static asset there's too much overhead setting up the connections to get to high bandwidth, especially https. Try it with a 1MB file, I bet outbound bandwidth will go up markedly. Also, serve static assets from a CDN, AWS CloudFront or CloudFlare - CloudFlare has much cheaper bandwidth including a free tier. – Tim Sep 22 '19 at 20:29

2 Answers2

1

Check out Bees with Machine Guns https://github.com/newsapps/beeswithmachineguns

adam
  • 111
  • 1
  • 1
    While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. – Michael Hampton Dec 21 '12 at 18:45
0

Make sure you tell AWS that you're doing this! also, you should review the following and make sure you don't upset the Bezos Bit Barn. It would be unfortunate if you were deplatformed for running a test. https://aws.amazon.com/ec2/testing/

ab is great for some testing however there are other good tools out there that you can also use. SmartBear's LoadNinja is great! ReadyAPI has some super neato hooks for agent-based testing. Some people really like using Apache's JMeter ...

t3ln3t
  • 434
  • 2
  • 8