@@ -47,8 +47,12 @@ HttpClient::HttpClient(
4747 http2Enabled_(SystemConfig::instance()->httpClientHttp2Enabled()),
4848 maxConcurrentStreams_(
4949 SystemConfig::instance ()->httpClientHttp2MaxStreamsPerConnection()),
50- http2FlowControlWindow_(
51- SystemConfig::instance ()->httpClientHttp2FlowControlWindow()),
50+ http2InitialStreamWindow_(
51+ SystemConfig::instance ()->httpClientHttp2InitialStreamWindow()),
52+ http2StreamWindow_(
53+ SystemConfig::instance ()->httpClientHttp2StreamWindow()),
54+ http2SessionWindow_(
55+ SystemConfig::instance ()->httpClientHttp2SessionWindow()),
5256 pool_(std::move(pool)),
5357 sslContext_(sslContext),
5458 reportOnBodyStatsFunc_(std::move(reportOnBodyStatsFunc)),
@@ -310,7 +314,9 @@ class ConnectionHandler : public proxygen::HTTPConnector::Callback {
310314 std::chrono::milliseconds connectTimeout,
311315 bool http2Enabled,
312316 uint32_t maxConcurrentStreams,
313- uint32_t http2FlowControlWindow,
317+ uint32_t http2InitialStreamWindow,
318+ uint32_t http2StreamWindow,
319+ uint32_t http2SessionWindow,
314320 folly::EventBase* eventBase,
315321 const folly::SocketAddress& address,
316322 folly::SSLContextPtr sslContext)
@@ -320,7 +326,9 @@ class ConnectionHandler : public proxygen::HTTPConnector::Callback {
320326 connectTimeout_(connectTimeout),
321327 http2Enabled_(http2Enabled),
322328 maxConcurrentStreams_(maxConcurrentStreams),
323- http2FlowControlWindow_(http2FlowControlWindow),
329+ http2InitialStreamWindow_(http2InitialStreamWindow),
330+ http2StreamWindow_(http2StreamWindow),
331+ http2SessionWindow_(http2SessionWindow),
324332 eventBase_(eventBase),
325333 address_(address),
326334 sslContext_(std::move(sslContext)) {}
@@ -343,9 +351,7 @@ class ConnectionHandler : public proxygen::HTTPConnector::Callback {
343351 void connectSuccess (proxygen::HTTPUpstreamSession* session) override {
344352 if (http2Enabled_) {
345353 session->setFlowControl (
346- http2FlowControlWindow_,
347- http2FlowControlWindow_,
348- http2FlowControlWindow_);
354+ http2InitialStreamWindow_, http2StreamWindow_, http2SessionWindow_);
349355 session->setMaxConcurrentOutgoingStreams (maxConcurrentStreams_);
350356 }
351357 auto txn = session->newTransaction (responseHandler_.get ());
@@ -372,7 +378,9 @@ class ConnectionHandler : public proxygen::HTTPConnector::Callback {
372378 const std::chrono::milliseconds connectTimeout_;
373379 const bool http2Enabled_;
374380 const uint32_t maxConcurrentStreams_;
375- const uint32_t http2FlowControlWindow_;
381+ const uint32_t http2InitialStreamWindow_;
382+ const uint32_t http2StreamWindow_;
383+ const uint32_t http2SessionWindow_;
376384 folly::EventBase* const eventBase_;
377385 const folly::SocketAddress address_;
378386 const folly::SSLContextPtr sslContext_;
@@ -541,7 +549,9 @@ void HttpClient::sendRequest(std::shared_ptr<ResponseHandler> responseHandler) {
541549 connectTimeout_,
542550 http2Enabled_,
543551 maxConcurrentStreams_,
544- http2FlowControlWindow_,
552+ http2InitialStreamWindow_,
553+ http2StreamWindow_,
554+ http2SessionWindow_,
545555 eventBase_,
546556 address_,
547557 sslContext_);
0 commit comments