-
-
Notifications
You must be signed in to change notification settings - Fork 245
Refactor to enhance code re-use and prepare for HTTP/3 support #732
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
Conversation
Hi,
|
Hi, I fixed the performance bug for HTTP1 with 'deadline' enabled. Good catch sorry. As far as performance impact, these changes should have minimal effect. I've done a few runs comparing 'before' and after' and found no difference at all. |
Would it be better if I split this into smaller changes? |
Sorry for delay. |
It's not true for In my environment, the difference are noticeable.
Off course, the performance gap is small, but I care it. |
Could you make this PR only contain |
Hi, so I removed the refactoring for the |
Could you just contain For this code,
The I test against https://github.com/hatoo/sandbag |
Ok I can do that. One thought to discuss though - is it a good thing for |
Yeah, performance variation depending on command line flags is not good.
I'm not saying I'll refuse all refactoring. I think we can refactoring work* to use common function while keeping the current performance by using generics. |
Done at #746 |
Hi,
A bigger change here but I hope it is valuable! We want to contribute HTTP/3 support to Oha. This is an initial CR which refactors the
client.rs
to use common functions for http1 and http2 load generation.It also introduces a HttpWorkType enum which is matched on to choose which functionality to execute, rather than the previous is_http2() function.
This lays the groundwork for adding a H3 work type in a following PR, and a http3 load generation common function.
This will be feature gated due to its experimental nature.
This has been split off into a separate PR to make them easier to understand and review individually. It's nice to be able to have a refactor PR which doesn't need to change any tests - it is internal structural changes only.
This PR has had an initial review here gseddon#1
and here is the HTTP3 branch, will make that PR once this one is merged gseddon#2