Tomcat的HTTP Connector

https://tomcat.apache.org/tomcat-10.1-doc/config/http.html

一个Connector代表一个接收请求、返回响应的端点(endpoint)。

HTTP Connector 元素代表一个支持HTTP/1.1的Connector组件。一个这样的组件在服务端一个指定的TCP端口上监听连接。一个Service组件可以包含一个或多个Connector组件。每个Connector组件将请求转发到关联的Engine上处理、并产生响应。

例如:

csharp 复制代码
<Connector port="8080" protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443"
           maxParameterCount="1000"
           />
  • 每个进来的、非异步的请求占用一个线程处理,在请求期间一直占用该线程;
  • 如果同时进来的请求超过了正在处理请求的线程的数量,会创建新的线程,一直到maxThreads属性配置的数值;
  • 如果还有更多并发请求进来,Tomcat会接受新的连接,一直到maxConnections属性配置的数量。连接在Connector创建的服务器socket中排队;
  • 如果达到了maxConnections属性配置的数量,操作系统对将更多的连接放到队列中排队。操作系统提供的队列的长度可以由acceptCount属性配置;
  • 如果操作系统队列满了,新进来的请求会被拒绝或者超时。

部分属性说明:

  • asyncTimeout:异步请求的默认超时时间,单位是毫秒。如果没有设置,为Servlet规范的默认值30000(即30秒)
  • maxCookieCount:一个请求中允许的cookie的数量。设置为小于0的值表示不限制。如果没有设置,会使用默认值200。
  • maxParameterCount:最大请求参数的数量,其中包含上传的文件。请求参数从URL的查询部分获得;对于POST请求,如果content type是application/x-www-form-urlencoded 或 multipart/form-data,还包含从请求体中获得的参数。超过该数量的请求参数会被忽略。将该属性设置为0表示不限制。如果没有设置,使用默认值10000。
  • port:TCP端口。Connector会在这个端口上创建一个 server socket,等待进来的连接。
  • protocol:设置处理进来的流量的协议,默认值是HTTP/1.1。
  • redirectPort:将需要SSL支持的请求转发到该端口处理,例如8443。
相关推荐
snow@li25 分钟前
Java:理解 Gradle / 后端项目的管家 / 打包SpringBoot 应用 / 完成编译、下载依赖、运行测试、打包 JAR/WAR / 速查表
java
云烟成雨TD38 分钟前
Spring AI 1.x 系列【57】动态工具发现:Tool Search Tool
java·人工智能·spring
zfoo-framework1 小时前
[修改代码使用]codex官方app中使用中转(不需要cc-switch) 1.config.toml 2.sk方式登录
java
逍遥德1 小时前
MQTT教程详解-05.SpringBoot集成mqtt client 性能分析
java·spring boot·spring·mt
云烟成雨TD1 小时前
Spring AI 1.x 系列【54】Retry 机制分析
java·人工智能·spring
weixin_523185321 小时前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
点燃大海1 小时前
SpringAI构建智能体
java·spring boot·spring·springai智能体
xier_ran1 小时前
【infra之路】02_RadixAttention与KV_Cache管理
java·spring boot·spring
黑马师兄2 小时前
RAG混合检索深度解析:让AI真正找到你要的内容
java·人工智能·ai·agent·rag·ai-native
码客日记2 小时前
Spring Boot 配置文件敏感信息加密(Jasypt 企业级完整方案)
java·spring boot·git