wrk2
Hey
wrk2 | Hey | |
---|---|---|
13 | 38 | |
4,164 | 17,294 | |
- | - | |
0.0 | 0.0 | |
2 months ago | 12 days ago | |
C | Go | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
wrk2
-
GNU Parallel, where have you been all my life?
> This runs a benchmark for 30 seconds, using 2 threads, keeping 100 HTTP connections open, and a constant throughput of 2000 requests per second (total, across all connections combined).
Some distros include `ab`[2] which is also good, but wrk2 improves on it (and on wrk version 1) in multiple ways, so that's what I use myself.
[1] https://github.com/giltene/wrk2
[2] https://httpd.apache.org/docs/2.2/programs/ab.html
-
Ask HN: What do you use to stress test your web application?
I've had my eyes on wrk2 [1]
1. https://github.com/giltene/wrk2
But I am curious, what does HN use? Any tips?
-
Running a Billion Workflows a month with Netflix Conductor
We used wrk2, a fantastic tool to generate stable load on the server. Wrk2 improves on wrk and adds the ability to generate sustained load at a specific rate (-R parameter).
-
How does one answer performance related questions such as these for a web API?
I use tools like vegeta and wrk2 to answer those questions.
-
Your load generator is probably lying to you
Needs (2015).
I loved the talks from Gil Tene.
I always reach for his fork of wrk whenever I need to test throughput:
https://github.com/giltene/wrk2
-
what is faster the template engine tera or PHP. is there any template engines for rust faster than PHP
That's why a lot of people just use something like wrk or wrk2 (highly recommended to run it on a separate machine) and benchmark the ability to serve actual requests.
-
PHP preload VS running as a daemon (benchmarks)
To get the most out of preload, I preloaded all files that the experimental endpoint needs to include. As a benchmarking tool, I use wrk2 — a more advanced Apache Benchmark analog — to keep it simple and provide more flexibility to generate loads similar to a real-life one.
-
Ask HN: Do you load test your applications? If so, how?
i use https://github.com/giltene/wrk2 pretty regularly.
it has decent lua hooks to customize behavior but i use it in the dumbest way possible to hammer a server at a fixed rate with the same payload over and over.
i run it by hand after a big change to the server to make sure nothing obviously regressed. i used to run it nightly in a jenkins job but 99% of the time no one looked at results. it was nice to see if assumptions on load a single node could handle didn't hold anymore.
- Wrk2: A constant throughput, correct latency recording variant of wrk
-
3 Benchmarking/load testing tools for different use cases
I use wrk2 because it overcomes coordinated omission.
Hey
-
AWS SnapStart - Part 19 Measuring cold starts and deployment time with Java 17 using different Lambda memory settings
The results of the experiment below were based on reproducing approximately 100 cold starts for the duration of our experiment which ran for approximately 1 hour. For it (and all experiments from my previous articles) I used the load test tool hey, but you can use whatever tool you want, like Serverless-artillery or Postman
-
Data API for Amazon Aurora Serverless v2 with AWS SDK for Java - Part 5 Basic cold and warm starts measurements
The results of the experiment to retrieve the existing product from the database by its id see GetProductByIdViaAuroraServerlessV2DataApiHandler with Lambda function with 1024 MB memory setting were based on reproducing more than 100 cold and approximately 10.000 warm starts with experiment which ran for approximately 1 hour. For it (and experiments from my previous article) I used the load test tool hey, but you can use whatever tool you want, like Serverless-artillery or Postman. We won't enable SnapStart on the Lambda function first.
-
AWS SnapStart - Part 15 Measuring cold and warm starts with Java 21 using different synchronous HTTP clients
The results of the experiment below were based on reproducing more than 100 cold and approximately 100.000 warm starts with experiment which ran for approximately 1 hour. For it (and experiments from my previous article) I used the load test tool hey, but you can use whatever tool you want, like Serverless-artillery or Postman. I ran all these experiments for all 3 scenarios using 2 different compilation options in template.yaml each:
-
AWS SnapStart - Part 13 Measuring warm starts with Java 21 using different Lambda memory settings
In our experiment we'll re-use the application introduced in part 9 for this. There are basically 2 Lambda functions which both respond to the API Gateway requests and retrieve product by id received from the API Gateway from DynamoDB. One Lambda function GetProductByIdWithPureJava21Lambda can be used with and without SnapStart and the second one GetProductByIdWithPureJava21LambdaAndPriming uses SnapStart and DynamoDB request invocation priming. We'll measure cold and warm starts using the following memory settings in MBs : 256, 512, 768, 1024, 1536 and 2048. I also put the cold starts measured in the part 12 into the tables to see both cold and warm starts in one place. The results of the experiment below were based on reproducing more than 100 cold and approximately 100.000 warm starts for the duration of our experiment which ran for approximately 1 hour. Here is the code for the sample application. For it (and experiments from my previous article) I used the load test tool hey, but you can use whatever tool you want, like Serverless-artillery or Postman. Abbreviation c is for the cold start and w is for the warm start.
-
Diagnósticos usando dotnet-monitor + prometheus + grafana
Por último, podemos executar os testes de carga usando hey.
-
Amazon DevOps Guru for the Serverless applications - Part 2 Setting up the Sample Application for the Anomaly Detection
For running our experiments to provoke anomalies we'll use the stress test tool. You can use the tool of your choice (like Gatling, JMeter, Fiddler or Artillery), I personally prefer to use the tool hey as it is easy to use and similar to curl. On Linux this tool can be installed by executing
- Threadpool no aspnet e problemas de performance
-
The Uncreative Software Engineer's Compendium to Testing
Hey: is a fast HTTP load testing tool used to test web applications and APIs. It provides a CLI (command-line interface) and supports concurrent requests.
-
The TCP receiver only ack the minimum bytes of MSS one by one
The client and server nodes are CentOS7.9/X86_64. If the HTTP POST requests were sent directly to the server with hey -c 1, there are about 0.2% of cases that may timeout. If the HTTP POST requests were sent through an NGINX proxy on the client node, there are about 20% of cases will timeout. I've confirmed that only one backend node has this problem. All other nodes are 100% succeeded even with higher throughput.
-
Benchmarking SQLite Performance in Go. Using Go's awesome built-in simple benchmarking tools to investigate SQLite database performance in a couple of different benchmarks, plus a comparison to Postgres.
64 concurrent requests isn't a lot. Modern web apps can typically handle much more than that (depending on what the request does, of course). Try it yourself with a load tester like https://github.com/rakyll/hey against a Go HTTP server, for example the one I've built in https://www.golang.dk/articles/go-and-sqlite-in-the-cloud
What are some alternatives?
wrk - Modern HTTP benchmarking tool
Vegeta - HTTP load testing tool and library. It's over 9000!
siege - Siege is an http load tester and benchmarking utility
k6 - A modern load testing tool, using Go and JavaScript - https://k6.io
loadtest - Runs a load test on the selected URL. Fast and easy to use. Can be integrated in your own workflow using the API.
artillery - The complete load testing platform. Everything you need for production-grade load tests. Serverless & distributed. Load test with Playwright. Load test HTTP APIs, GraphQL, WebSocket, and more. Use any Node.js module.
anteon - Anteon (formerly Ddosify) - Effortless Kubernetes Monitoring and Performance Testing. Available on CLI, Self-Hosted, and Cloud
PPSS - Parallel Processing Shell Script
grpcurl - Like cURL, but for gRPC: Command-line tool for interacting with gRPC servers
kubernetes - Production-Grade Container Scheduling and Management