gpt4 book ai didi

Spring Boot 应用程序只接受 6 个请求,为什么?

转载 作者:行者123 更新时间:2023-12-02 09:54:03 24 4
gpt4 key购买 nike

这真的让我很烦恼,希望有人能帮忙。

我有一个 Spring Boot 应用程序,我正在向 postman 发出请求,并且我需要同时发出大约 20 个单独的请求。然而我的应用程序只接受 6 个,然后当这些完成后启动其他的。

我 NumPy 了这个例子,以便将其发布在这里

简单的 Controller 方法

@RequestMapping(value = "/testPost", method = RequestMethod.POST)
public @ResponseBody String handleFileUpload() throws InterruptedException {
System.out.println("Recieved request for Thread sleeping" + Thread.currentThread().getName());
Thread.sleep(40000);
System.out.println("Recieved request for Thread waking" + Thread.currentThread().getName());
return "returning from post";
}

application.properties:我将最大线程数更改为 200 而不是默认值,但没有什么区别

server.contextPath=/qas
server.port=8081

server.tomcat.max-threads=200

postman 发出的请求的日志。正如您所看到的,在 6 个请求之后,只有在第 1 个请求空闲后,第 7 个请求才会得到服务。我在本地桌面上运行,没有负载均衡器,这是原因吗?不太清楚为什么它停在 6 点?

日志:

2016-04-08 09:02:35.408  INFO 17700 --- [nio-8081-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/qas]    : Initializing Spring FrameworkServlet 'dispatcherServlet'
2016-04-08 09:02:35.408 INFO 17700 --- [nio-8081-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started
2016-04-08 09:02:35.421 INFO 17700 --- [nio-8081-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 13 ms
Recieved request for Thread sleepinghttp-nio-8081-exec-1
Recieved request for Thread sleepinghttp-nio-8081-exec-2
Recieved request for Thread sleepinghttp-nio-8081-exec-3
Recieved request for Thread sleepinghttp-nio-8081-exec-4
Recieved request for Thread sleepinghttp-nio-8081-exec-5
Recieved request for Thread sleepinghttp-nio-8081-exec-6
Recieved request for Thread wakinghttp-nio-8081-exec-1
Recieved request for Thread sleepinghttp-nio-8081-exec-7
Recieved request for Thread wakinghttp-nio-8081-exec-2
Recieved request for Thread sleepinghttp-nio-8081-exec-8
Recieved request for Thread wakinghttp-nio-8081-exec-3
Recieved request for Thread wakinghttp-nio-8081-exec-4
Recieved request for Thread wakinghttp-nio-8081-exec-5
Recieved request for Thread wakinghttp-nio-8081-exec-6
Recieved request for Thread wakinghttp-nio-8081-exec-7
Recieved request for Thread wakinghttp-nio-8081-exec-8

提前致谢

最佳答案

很多人不知道(或忘记)的是,大多数浏览器都有每个主机可以触发的最大并行请求数。具体多少取决于浏览器和浏览器版本。 (显然你使用Postman,它使用允许6个并发请求的chrome)。

List of parallel connections per browser

参见http://sgdev-blog.blogspot.nl/2014/01/maximum-concurrent-connection-to-same.html以获得更详细的描述。

另请参阅https://stackoverflow.com/a/985704/2696260

关于Spring Boot 应用程序只接受 6 个请求,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36494719/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com