-
Notifications
You must be signed in to change notification settings - Fork 17.9k
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
x/net/http2: allow setting MaxConcurrentStreams on client #63196
Comments
Thanks for the report. Could you please post (via playground link) the code you are using? |
@neild @tombergan per owners |
The test code is here. I checked 1 connection on my machine. http2
http1.1
|
Please let me know if you need any more information. |
note that the server can set MaxConcurrentStreams, similar performance improvements can be achieved through #47840 |
I think we need a way to set MaxConcurrentStreams on the client. (http2.transport) In addition to the go server, I am using a server such as go reverse proxy, nginx, etc. The MaxReadFrameSize fluctuates and the numbers remain the same. |
I'm looking for something new and sharing it with you. My current computer is cpu 56core. |
What version of Go are you using (
go version
)?Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (
go env
)?go env
OutputWhat did you do?
I downloaded 9M files using 100 goroutines from http2.transport.
What did you expect to see?
There are currently more than 100 active streams in http2. I thought the connection would be newly opened, but it didn't.
What did you see instead?
After checking the http2.transport connection pool, we are reusing a single connection.
The netstat -nap check shows that there is 1 connection, rx full, tx full a lot.
The following modifications improve performance by creating connections in units of 20 active streams.
As the number of active streams increases, http2 becomes slower and slower.
The text was updated successfully, but these errors were encountered: