Skip to content
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

K6 supporting grpc for streaming use cases #2383

Closed
rahul2july opened this issue Feb 9, 2022 · 3 comments
Closed

K6 supporting grpc for streaming use cases #2383

rahul2july opened this issue Feb 9, 2022 · 3 comments

Comments

@rahul2july
Copy link

Feature Description

Hi,
I am looking to use k6 for grpc load testing.
Everything looks good k6 but got this through the documentations:
"""we're happy to introduce a native client for gRPC communication. In this early release, we've settled for providing a solid experience for unary calls. If any of the other modes would be particularily useful for you, we'd love to hear about your use case so we can move it up our backlog."""

"""k6 is a great tool for writing performance tests in Javascript. It supports gRPC unary calls by default. But for now, streaming is not supported at all. And it is not easy to add this functionality easily to the current implementation"""

Please could you share the timelines when streaming would be officially supported?

Suggested Solution (optional)

No response

Already existing or connected issues / PRs (optional)

No response

@na--
Copy link
Member

na-- commented Feb 9, 2022

Thanks for opening this issue, though I will have to close it, since it's a duplicate of #2020.

To answer the question, streaming support depends on having event loops in VUs (#882). The good news is that we have an open PR to add that event loop support (#2228) and hope to merge and release it in the next k6 version (v0.37.0), slated to be released around March 14th. Optimistically, gRPC streaming might arrive soon after that, probably first as an xk6 extension (e.g. along the lines of #2315), and later in the k6 core.

However, we haven't prioritized anything after v0.37.0, so I can't promise anything yet. If someone is willing to contribute a high-quality implementation (first as an extension), it will probably speed things up significantly. If not, at least give a 👍 to #2020, so we can gauge user demand for the feature more accurately in our prioritization discussions.

@na-- na-- closed this as completed Feb 9, 2022
@rahul2july
Copy link
Author

Hi,
If we need to make this change , could you suggest where all we need to make the relevant changes.
We will give a shot and raise a pull request if this works.

@na--
Copy link
Member

na-- commented Feb 17, 2022

The gRPC code is located here: https://github.com/grafana/k6/tree/master/js/modules/k6/grpc
Though again, I suggest waiting for #2228 to be merged (or developing on top of its branch) and probably also waiting for #2315 (since we plan to work on that very soon).

Please don't comment in the closed issue anymore and instead use #2020 for discussing your proposed solution, if you start working on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants