服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Tomcat - tomcat默认最大连接数与调整的方法示例

tomcat默认最大连接数与调整的方法示例

2022-08-15 09:32市井榴芒 Tomcat

本文主要介绍了tomcat默认最大连接数与调整的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一般来说我们都是用tomcat默认的配置做基础的本地开发,测试及生产肯定不用tomcat啦,正式一点的企业肯定换大型容器了,当然不排除还是用tomcat或者它的集群的,言归正传,tomcat的连接数相关配置及修改干货如下:

在tomcat配置文件server.xml中的<Connector  />标签配置中,和连接数相关的参数有下面几个(如果你现在看肯定都没有的):

  • minProcessors------------------最小空闲连接线程数,用于提高系统处理性能,默认值为10
  • maxProcessors-----------------最大连接线程数,即:并发处理的最大请求数,默认值为75
  • acceptCount---------------------允许的最大连接数,应大于等于maxProcessors,默认值为100
  • enableLookups-----------------是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
  • connectionTimeout------------网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。

P.S.如果你要手动增加这些链接相关参数,那么根据以上参数肯定是找不到的,官方文档提示需要搞另外两个参数才能加大并发连接数,那就是maxProcessors和acceptCount。

官方原话及翻译:

If more simultaneous requests are received than can be handled by the currently available request processing threads, additional threads will be created up to the configured maximum (the value of the maxThreads attribute).

如果接收到的并发请求比当前可用的请求处理线程所能处理的更多,则将创建额外的线程到配置的最大值(maxThreads 属性)。

If still more simultaneous requests are received, they are stacked up inside the server socket created by the Connector, up to the configured maximum (the value of the acceptCount attribute).

如果接收到更多的并发请求,则它们被堆叠在由连接器创建的服务器套接字内,直到配置的最大值(acceptCount 属性)。

所以需要设置的是maxThreads和acceptCount这两个值,两者的默认值分别是200和100,要调整Tomcat的默认最大连接数,可以增加这两个属性的值,并且使acceptCount大于等于maxThreads:

?
1
2
3
<Connector port="8080" protocol="HTTP/1.1"
              connectionTimeout="20000"
              redirectPort="8443" acceptCount="300" maxThreads="200" />

并发请求数 <= tomcat最大线程数200,可以看到200个请求,响应结果正常
并发数(201) >tomcat最大线程数200.可以看到,因为tomcat最大的线程数为200,201的并发请求量,超出了并发处理的数量200,多出来的1个请求,需要等待某个处理中的请求处理完成
请求数超过最大连接数300,可以看到有大量的没有正常响应的http请求,原因很简单,因为超过了tomcat设置的最大连接数,服务器拒绝了该次请求的连接

增加线程是有成本的,JVM中默认情况下在创建新线程时会分配大小为1M的线程栈,所以更多的线程异味着更多的内存;
更多的线程会带来更多的线程上下文切换成本。

springboot中Tomcat配置建议:
最大工作线程数 ,默认200(4核8G内存,线程数经验值为800,操作系统之间做线程之间切换调度是有开销的,不是越多越好),最大连接数默认是10000,等待长度默认为100,最小工作空闲线程默认10

线程数的经验值为:1核2G内存, 线程数经验值为200,;4核8G内存,线程数经验值为800

到此这篇关于tomcat默认最大连接数与调整的方法示例的文章就介绍到这了,更多相关tomcat默认最大连接数内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/csdn_avatar_2019/article/details/104323896

延伸 · 阅读

精彩推荐
  • TomcatTomcat注册成服务的几个注意点小结

    Tomcat注册成服务的几个注意点小结

    这篇文章主要介绍了Tomcat注册成服务的几个注意点,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的...

    嵟鍕7122021-09-15
  • TomcatTomcat中对静态资源的处理教程

    Tomcat中对静态资源的处理教程

    这篇文章主要给大家介绍了关于Tomcat中对静态资源处理的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Tomcat具有一定的参考学习价值...

    wskwbog7992021-09-06
  • TomcatTomcat服务器安装配置教程(win7)

    Tomcat服务器安装配置教程(win7)

    这篇文章主要为大家详细介绍了windows7系统安装与配置Tomcat服务器环境的详细步骤,感兴趣的小伙伴们可以参考一下...

    Tomcat教程网8552021-08-11
  • Tomcat如何解决点击 tomcat9.exe闪退的问题

    如何解决点击 tomcat9.exe闪退的问题

    这篇文章主要介绍了如何解决点击 tomcat9.exe闪退的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...

    苜苜的烂笔头7382021-09-23
  • TomcatIDEA编辑器整合Apache Tomcat的详细教程

    IDEA编辑器整合Apache Tomcat的详细教程

    这篇文章主要介绍了IDEA编辑器整合Apache Tomcat教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的...

    洛阳泰山4082021-09-22
  • TomcatTomcat Nginx Redis实现session共享过程图解

    Tomcat Nginx Redis实现session共享过程图解

    这篇文章主要介绍了Tomcat Nginx Redis实现session共享过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友...

    与李10312021-09-14
  • Tomcat在同一台服务器上配置多个Tomcat的方法

    在同一台服务器上配置多个Tomcat的方法

    本篇文章主要讲诉了在同一台服务器上配置多个Tomcat的方法,主要是解决端口冲突问题,有需要的可以了解一下。...

    Ruthless7802021-08-13
  • Tomcat如何通过LambdaProbe实现监控Tomcat

    如何通过LambdaProbe实现监控Tomcat

    这篇文章主要介绍了如何通过LambdaProbe实现监控Tomcat,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参...

    cuisuqiang10632021-09-16