Comments (14)
Most of the time, you shouldn't have to care about the -workers
flag. It was added to limit the amount of concurrent go routines (green threads) used in long load tests. By default Vegeta spawns one go routine per request and that works very well for most input parameters.
from vegeta.
So, if I define 5 workers, they'll be spawned in total or as vegeta need them?
from vegeta.
They will usually be spawned faster than they'll be used. What's your issue / use-case?
from vegeta.
Basically I'm running some load tests agains ElasticSearch and Apache Solr REST API.
I'm have some doubts about vegeta...
does the workers simulate clients or I need to run different instances of Vegeta with --workers=1 ?
from vegeta.
The central unit of Vegeta is the rate, not workers. Don't think about
workers for now. Think about how many requests per second you want to throw
at Elastic Search and Apache Solr Index. For instance, assuming you'd want
to try out 1000 req/s:
echo "GET http://..." | vegeta attack -duration=60s -rate=1000 | tee
results.bin | vegeta report
On Fri, Dec 19, 2014, 11:13 Bruno Andrade [email protected] wrote:
Basically I'm running some load tests agains ElasticSearch and Apache Solr
REST API.I'm have some doubts about vegeta...
does the workers simulate clients or I need to run different instances of
Vegeta with --workers=1 ?—
Reply to this email directly or view it on GitHub
#107 (comment).
from vegeta.
basically I did a shell script to execute a lot of attacks, sequential, with different duration, rates and workers. The, I analize them via plot reporter.
I just have doubts on the workers. If each spawned worker connects itself, as a client, to Elasticsearch. Doing parallel requests
from vegeta.
Each worker will issue requests against the targets. HTTP Keepalive is
enabled by default so the underlying TCP connection is reused when not
blocked on waiting for a response from a previous request.
On Fri, Dec 19, 2014, 11:47 Bruno Andrade [email protected] wrote:
basically I did a shell script to execute a lot of attacks, sequential,
with different duration, rates and workers. The, I analize them via plot
reporter.I just have doubts on the workers. If each spawned worker connects itself,
as a client, to Elasticsearch. Doing parallel requests—
Reply to this email directly or view it on GitHub
#107 (comment).
from vegeta.
If a disable HTTP Keepalive and define some workers, probably I can simulate multi-client benchmark environment, right?
from vegeta.
What is your understanding of a multi-client benchmark environment?
On Fri, Dec 19, 2014, 11:54 Bruno Andrade [email protected] wrote:
If a disable HTTP Keepalive and define some workers, probably I can
simulate multi-client benchmark environment, right?—
Reply to this email directly or view it on GitHub
#107 (comment).
from vegeta.
Simulation of a real situation where different clients are in different machines. In my case I just want to ensure that "clients" don't share connections...
from vegeta.
Are the kind of clients you're referring to Web browsers? If so, most
modern web browsers use HTTP Keepalive by default, when the server supports
it.
On Fri, Dec 19, 2014, 12:00 Bruno Andrade [email protected] wrote:
Simulation of a real situation where different clients are in different
machines. In my case I just want to ensure that "clients" don't share
connections...—
Reply to this email directly or view it on GitHub
#107 (comment).
from vegeta.
Im focused on benchmarking elasticsearch and solr for an ingestion rate and how does they react when I increase the number of clients.
Later, I'll have a fluentd or bash/python script in different machines sending data in a stable rate to one of them. That's the reason why I want to test the both of them in a high-load and multi-client environment.
from vegeta.
Vegeta isn't a traditional benchmarking tool. It's meant to answer "How
does my service behave at X req/s" rather than benchmarking something at
it's peak capacity. If you want benchmarking, I'd suggest you use
https://github.com/wg/wrk
On Fri, Dec 19, 2014, 12:10 Bruno Andrade [email protected] wrote:
Im focused on benchmarking elasticsearch and solr for an ingestion rate
and how does they react when I increase the number of clients.Later, I'll have a fluentd or bash/python script in different machines
sending data in a stable rate to one of them. That's the reason why I want
to test the both of them in a high-load and multi-client environment.—
Reply to this email directly or view it on GitHub
#107 (comment).
from vegeta.
Thanks,
I'll give it a look.
from vegeta.
Related Issues (20)
- Prometheus + Grafana Integration not working HOT 3
- Immediately stop vegeta while using go client HOT 4
- Add support for HAProxy ProxyProtocol
- I am getting a lot of HTTP zero in the results, how can I troubleshoot it?
- Latency is not being reported correctly on windows.
- How to change x-axis for the vegeta realtime?
- Why can’t I test this local custom domain name mapping service?
- ipv6 is being used on a client machine when not supported HOT 3
- Can the latest version be published on Go packages? HOT 1
- Officially call json input format JSON Lines? HOT 1
- keepalive flag isnt working HOT 6
- Limiting total number of requests HOT 4
- vegeta unable to write to files with -output
- TCP sockets opened lower than requested number of connections HOT 4
- Running "easyjson": exec: "easyjson": executable file not found in $PATH on ubnutu 22.04 HOT 1
- can vegeta do the performance test to a RPC methond request
- Dynamic Pacing / Rate? HOT 2
- Support curl's --connect-to parameter HOT 1
- Disabling dns cache with dns-ttl doesn't seem to work
- Troubleshoot mTLS certificates
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vegeta.