【杂谈】Spring Boot 默认支持的并发量

Spring Boot应用支持的最大并发量是多少?

Spring Boot 能支持的最大并发量主要看其对Tomcat的设置,可以在配置文件中对其进行更改。当在配置文件中敲出max后提示值就是它的默认值。

我们可以看到默认设置中,Tomcat的最大线程数是200,最大连接数是10000。

并发量指的是连接数,还是线程数?

当然是连接数。

200个线程如何处理10000条连接?

Tomcat有两种处理连接的模式,一种是BIO,一个线程只处理一个连接,另一种就是NIO,一个线程处理多个连接。由于HTTP请求不会太耗时,而且多个连接一般不会同时来消息,所以一个线程处理多个连接没有太大问题。

为什么不开几个线程?

多开线程的代价就是,增加上下午切换的时间,浪费CPU时间,另外还有就是线程数增多,每个线程分配到的时间片就变少。多开线程≠提高处理效率。

那增大最大连接数呢?

增大最大连接数,支持的并发量确实可以上去。但是在没有改变硬件条件的情况下,这种并发量的提升必定以牺牲响应时间为代价。

对了,配置文件明明就是空的,这些提示内容是哪里加载的?

默认生成的配置文件确实是空的,就是普通的文本文件,不要错以为这些内容是被隐藏掉的。首先是IDE要支持,IDE支持Spring Boot项目就知道该从哪里加载数据。Spring Boot的默认配置信息,都在 spring-boot-autoconfigure-版本号.jar 这个包中。其中上述Tomcat的配置在/web/ServerProperties.java中。下图是用jd-gui反编译看的,你也可以在spring boot项目中找到依赖包查看。

【杂谈】Spring Boot 默认支持的并发量Spring Boot应用支持的最大并发量是多少?Spring Boot 能支持的最大并发量主要看其对Tomcat的设置,可以在配置文件中对其进行更改。当在配置文件中敲出max后提示值就是它的默认值。我们可以看到默认设置中,Tomcat的最大线程数是200,最大连接数是10000。并发量指的是连接数,还是线程数?当然是连接数。...
SpringBoot 内置Tomcat,在 默认 设置中,Tomcat的最大线程数是200,最大连接数是10000。 支持 并发 是指连接数,也就是说 支持 最大 并发 是一万( 默认 ) Tomcat有两种处理连接的模式, 1,是BIO,一个线程只处理一个Socket连接, 2,是NIO,一个线程处理多个Socket连接。 由于HTTP请求不会太耗时,而且多个连接一般不会同时来消息,所以一个线程处理多个连接没有太大问题。一个线程处理多个连接数会很慢 有可能会超时 默认 内嵌Tomcat配置: server...
1.1 Spring 事务处理时自我调用的解决方案及一些实现方式的风险 1.2 我对AOP的理解 1.3 Spring 开闭原则的表现-BeanPostProcessor的扩展点-1 1.4 我对IoC/DI的理解 1.5 Spring MVC + spring 3.1.1 + hibernate4.1.0 集成及常见问题总结 1.6 » Spring 之AOP AspectJ切入点语法详解(最全了,不需要再去其他地找了) 1.7 Spring 开闭原则的表现-BeanPostProcessor扩展点-2 1.8 Spring 3.1 对Bean Validation规范的新 支持 (方法级别验证) 1.9 Spring 对事务管理的 支持 的发展历程(基础篇) 1.10 基于JDK动态代理和CGLIB动态代理的实现 Spring 注解管理事务(@Trasactional)到底有什么区别。 1.11 在 spring 中获取代理对象代理的目标对象工具类 1.12 如何为 spring 代理类设置属性值 1.13 我对 Spring DAO层 支持 的总结 1.14 我对 Spring DAO层 支持 的总结 1.15 我对 Spring DAO层 支持 的总结 1.16 我对 Spring 容器管理事务 支持 的总结 1.17 我对 Spring 容器管理事务 支持 的总结 1.18 不重复配置——利用 Spring 通用化配置 1.19 @Value注入Properties 错误的使用案例 1.20 @Value注入Properties 使用错误的案例 1.21 扩展 Spring MVC以 支持 更精准的数据绑定 1.22 扩展 Spring MVC以 支持 更精准的数据绑定1 1.23 扩展 Spring MVC以 支持 绑定JSON格式的请求参数 1.24 扩展 Spring MVC以 支持 绑定JSON格式的请求参数 1.25 在应用层通过 spring 特性解决数据库读写分离 1.26 context:component-scan扫描使用上的容易忽略的use-default-filters 1.27 idea内嵌jetty运行 spring mvc项目报ConversionFailedException 1.28 spring mvc 3.2 @MatrixVariable注解 1.29 spring 3.2 带matrix变 的URL匹配问题 1.30 Shiro+Struts2+ Spring 3 加上@RequiresPermissions 后@Autowired失效 1.31 Spring 事务不起作用 问题汇总 1.32 Spring 3 Web MVC下的数据类型转换(第一篇)——《跟我学 Spring 3 Web MVC》抢先看 1.33 Spring 注入集合类型
springboot 默认 支持 的并有多少? Spring boot 支持 的最大 并发 主要是看其对tomcat的设置,可以在配置文件中对其进行更改。当在配置文件中配置max后,提示值就是 默认 值。在 默认 值中,tomcat最大线程数时200,最大连接数是10000.所以 默认 支持 并发 是10000. server.tomcat.max-connections 默认 值是10000