From 36f7a47e429eee7bcb39a089a5419bdfb7968be4 Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Tue, 16 Mar 2021 09:54:09 +0000 Subject: [PATCH] Don't use HTTP/2 --- cmd/dendrite-demo-pinecone/conn/client.go | 23 +++++++++++++++-------- cmd/dendrite-demo-pinecone/main.go | 5 +---- 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/cmd/dendrite-demo-pinecone/conn/client.go b/cmd/dendrite-demo-pinecone/conn/client.go index 5570c787f..9b51c27c0 100644 --- a/cmd/dendrite-demo-pinecone/conn/client.go +++ b/cmd/dendrite-demo-pinecone/conn/client.go @@ -9,7 +9,6 @@ import ( "github.com/matrix-org/dendrite/setup" "github.com/matrix-org/gomatrixserverlib" "github.com/sirupsen/logrus" - "golang.org/x/net/http2" pineconeRouter "github.com/matrix-org/pinecone/router" pineconeSessions "github.com/matrix-org/pinecone/sessions" @@ -41,7 +40,7 @@ func ConnectToPeer(pRouter *pineconeRouter.Router, peer string) { } type RoundTripper struct { - inner *http2.Transport + inner *http.Transport } func (y *RoundTripper) RoundTrip(req *http.Request) (*http.Response, error) { @@ -55,9 +54,13 @@ func CreateClient( tr := &http.Transport{} tr.RegisterProtocol( "matrix", &RoundTripper{ - inner: &http2.Transport{ - AllowHTTP: true, - DialTLS: s.DialTLSForH2C, + inner: &http.Transport{ + MaxIdleConns: 100, + MaxIdleConnsPerHost: 5, + Dial: s.Dial, + DialContext: s.DialContext, + DialTLS: s.DialTLS, + DialTLSContext: s.DialTLSContext, }, }, ) @@ -72,9 +75,13 @@ func CreateFederationClient( tr := &http.Transport{} tr.RegisterProtocol( "matrix", &RoundTripper{ - inner: &http2.Transport{ - AllowHTTP: true, - DialTLS: s.DialTLSForH2C, + inner: &http.Transport{ + MaxIdleConns: 100, + MaxIdleConnsPerHost: 5, + Dial: s.Dial, + DialContext: s.DialContext, + DialTLS: s.DialTLS, + DialTLSContext: s.DialTLSContext, }, }, ) diff --git a/cmd/dendrite-demo-pinecone/main.go b/cmd/dendrite-demo-pinecone/main.go index 978748bd5..9555e7116 100644 --- a/cmd/dendrite-demo-pinecone/main.go +++ b/cmd/dendrite-demo-pinecone/main.go @@ -47,8 +47,6 @@ import ( "github.com/matrix-org/dendrite/setup/config" "github.com/matrix-org/dendrite/userapi" "github.com/matrix-org/gomatrixserverlib" - "golang.org/x/net/http2" - "golang.org/x/net/http2/h2c" pineconeMulticast "github.com/matrix-org/pinecone/multicast" pineconeRouter "github.com/matrix-org/pinecone/router" @@ -224,7 +222,6 @@ func main() { pQUIC.Mux().Handle(httputil.PublicMediaPathPrefix, pMux) // Build both ends of a HTTP multiplex. - h2s := &http2.Server{} httpServer := &http.Server{ Addr: ":0", TLSNextProto: map[string]func(*http.Server, *tls.Conn, http.Handler){}, @@ -234,7 +231,7 @@ func main() { BaseContext: func(_ net.Listener) context.Context { return context.Background() }, - Handler: h2c.NewHandler(pMux, h2s), + Handler: pMux, } go func() {