New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add client-benchmark-noop-api-plugin to stress clients even more in benchmarks #20103
Add client-benchmark-noop-api-plugin to stress clients even more in benchmarks #20103
Conversation
@danielmitterdorfer Could we instead have a dummy http server (not even using ES) that responds on the expected paths? I think it would be a lot more transparent (no possibility of accidentally not setting/changing something in ES which results in real work being done). If that doesn't work, then can we at least have a better, more descriptive name than "noop"? Something that makes it clear it is for benchmarking, and makes indexing requests noops...but I would still prefer just not using ES at all for this, since it does not seem necessary. |
@rjernst I can change name, sure. Regarding the plugin's purpose: We could use a dummy HTTP server but the thing is that this is also used for benchmarking the transport client and there is no substitute for that. Also, using ES for the server-side component ensures that the interaction model stays as close as possible to a real use case. |
I've renamed the plugin now to "client-benchmark-noop-api-plugin" to indicate that it provides a no operation (No op) API and its purpose (benchmarking clients). |
@rjernst Are you otherwise fine with the change (especially after my explanation why the plugin is needed at all)? |
case "search": | ||
runSearchBenchmark(args); | ||
break; | ||
case "bulk": |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just curious, why isn't this called "indexing"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No special reason tbh. I just used the specific indexing approach as name.
LGTM |
Thanks for your review Ryan. |
With this PR we add a noop plugin for Elasticsearch. It is needed to reduce the amount of request processing that is done on server-side to avoid introducing accidental bottlenecks and uncertainty on server side in order to stress clients in client-side benchmarks.