Ajax 使用HTTP2如何限制并发请求的数量?

Ajax 使用HTTP2如何限制并发请求的数量?,ajax,nginx,request,http2,Ajax,Nginx,Request,Http2,我们有一个系统客户端服务器在HTTP1.1上工作。客户端向服务器发出数百(有时数千)个并发请求 由于浏览器对HTTP1.1连接的默认限制,客户机实际上是在批量(6~8)并发请求中发出这些请求,因此我们认为,如果我们能够增加并发请求的数量,我们可以获得一些性能改进 我们将系统移动到HTTP2上,我们看到客户机按照我们的要求同时请求所有请求 现在的问题正好相反:服务器无法处理如此多的并发请求 如何将客户端同时执行的并发请求数量限制为服务器更易于管理的数量?假设为50~100个并发请求 我们假设HTT

我们有一个系统
客户端服务器
在HTTP1.1上工作。客户端向服务器发出数百(有时数千)个并发请求

由于浏览器对HTTP1.1连接的默认限制,客户机实际上是在批量(6~8)并发请求中发出这些请求,因此我们认为,如果我们能够增加并发请求的数量,我们可以获得一些性能改进

我们将系统移动到HTTP2上,我们看到客户机按照我们的要求同时请求所有请求

现在的问题正好相反:服务器无法处理如此多的并发请求

如何将客户端同时执行的并发请求数量限制为服务器更易于管理的数量?假设为50~100个并发请求

我们假设HTTP2可以让我们毕业的并发数 连接:

使用HTTP/2,客户机可以完全控制服务器推送的方式 用过。客户端可以限制并发推送流的数量; 调整“初始流量控制”窗口以控制需要的数据量 第一次打开流时推送;或禁用服务器推送 完全这些首选项通过设置框进行通信 在HTTP/2连接开始时,可以随时更新 时间

这里也有:

O如果可能的话,我们可以在服务器端限制这一点(我认为更易于维护)

但看起来这些解决方案正在讨论中,而我们所拥有的是客户拉动

在任何情况下,我们的体系结构如下所示:

Client ==[http 2]==> ALB(AWS Beanstalk)  ==[http 1.1]==> nginx  ==[http 1.0]==> Puma

设置
框架中有特殊设置

您可以在服务器端将
SETTINGS\u MAX\u CONCURRENT\u STREAMS
指定为
100