<Java_web>Tomcat的Connector及线程池配置

笔记总结自网易云课堂web开发课程

Connector参数配置

port端口号
Tomat默认的端口号为8080,根据不同的需求,我们可能需要修改端口号。

address监听地址
实际使用中,我们的服务器一般会有多个IP地址,为了区分出我们需要监听的对象,需要设定一个地址。如果不配置address的话,默认会在所有的地址上监听请求,出于安全原因,一般是不被允许的。

protocal协议
默认协议为HTTP/1.1。

connectionTimeout
连接时间限制,单位为毫秒,我们建立TCP连接时,在HTTP/1.1协议中,默认是保持连接的(connection:keep-alive),这样,服务器会分配一个线程,如果长时间不使用这个线程(尸位素餐),服务器会自动断开。

acceptCount
当系统没有空闲线程去处理请求时,请求就需要排队进入了,而acceptCount就是用来设定这个等候队列的长度的,默认值为100。如果超出了队列的长度的话,Connector就不会再进行处理了。

maxConnections
最大同时连接数,默认BIO Connector的最大连接数是线程值的最大值。若设定为-1,即在服务器资源允许的前提下,尽可能多的接受连接请求。

线程池

线程池是用来存放事先创建好的一定数目的线程使用的,当有任务时,从线程池中取出线程,使用完毕后,放回线程池。线程的创建和销毁要花费大量的时间,对服务器的影响比较大,所以我们实际上事先创建线程,减少了线程的创建与销毁。
minSpareThreads
最小空闲线程数,即没有连接时,必须要要存在的空闲线程。
maxThreads
最大线程数,即服务器能够创建的最大线程数量。
弹性线程池
线程池中的线程数量在最小值和最大值之间随请求数量变化的线程池成为弹性线程池。

Connector配置

Connector的配置信息保存在Tomcat目录下conf文件夹中server.xml文件里,在更改配置信息时,要养成随手备份的好习惯。

cp server.xml server.xml.bak
修改Connector

用任意的文本编辑软件打开server.xml文件,找到Connector,即可对Connector进行修改。上图是默认的Connector信息,它的端口是8080,协议为HTTP/1.1,连接时间为20000毫秒,即20秒,重定向端口为8443(https协议使用).

线程池配置

找到Connector标签上面的<Executor>标签,并将其注释去掉,


线程池配置

这里,有线程池的名字,最大连接数和最小空闲连接数。
若想使Connector使用刚才定义好的线程池,需要在Connector中添加以下属性:

executor="ThreadPoolName"

或者,我们也可以将线程池的两个属性添加在Connector标签中。若依赖存在的话,优先使用依赖的线程池。多个Connector可以共用一个Executor的配置。
这样,我们的配置就完成了。只需要重新启动Tomcat,就能使用新的配置了。

curl http://127.0.0.1:8080
telnet localhost 8080//这样会保持连接,可以用来验证maxThread的效果。
GET /path HTTP/1.1

注意

在server.xml文件中,我们所修改的一切都不涉及对系统资源的直接配置,包括CPU,内存等信息,都不是我们直接修改的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,283评论 19 139
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,593评论 11 349
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,227评论 6 342
  • 0 系列目录# WEB请求处理 WEB请求处理一:浏览器请求发起处理 WEB请求处理二:Nginx请求反向代理 W...
    七寸知架构阅读 10,900评论 3 66
  • 小组名称:飞雪静茗 脑图解说: 中心图: 选用的一个台历图案,台历上翻到的是三月份日历,用红笔标出了准备列计划的五...
    雪心168阅读 3,345评论 11 9

友情链接更多精彩内容