您当前的位置:首页 > 电脑百科 > 站长技术 > 服务器

详解Tomcat配置参数connectionTimeout意义

时间:2023-09-01 13:30:26  来源:Springboot实战案例锦集  作者:
connectionTimeout参数是说当客户端与服务器连接以后,如果客户端不输入任何内容,那么超过了connectionTimeout设置的时间后连接会被断开。​

环境:springboot2.5.12

Application.yml配置

server:
  port: 8081
  Tomcat:
    maxThreads: 10
    maxConnections: 10
    acceptCount: 1  
    connectionTimeout: 3000

测试1:

在controller中休眠10s>connectionTimeout

@RestController
@RequestMapping("/test")
public class TestController {


  @GetMapping("/index")
  public Object index() {
    try {
      System.out.println(Thread.currentThread().getName()) ;
      TimeUnit.SECONDS.sleep(10) ;
    } catch (InterruptedException e) {
      e.printStackTrace();
    }
    return "success" ;
  }
  
}

发现程序能正常地响应。

结论:connectionTimeout参数与具体的请求响应时间是没有关系的。

测试2:

通过HttpURLConnection发送请求

public class HttpURLConnectionDemo {
  
  public static void mAIn(String[] args) throws Exception {
    HttpURLConnection con = (HttpURLConnection) new URL("http://localhost:8081/test/index").openConnection() ;
    con.setDoInput(true) ;
    con.setDoOutput(true) ;
    long start = System.currentTimeMillis() ;
    InputStream is = con.getInputStream() ;
    Scanner scan = new Scanner(is) ;
    while(scan.hasNext()) {
      System.out.println("接收到内容:" + scan.next() + "n耗时:" + (System.currentTimeMillis() - start)) ;
    }
    scan.close() ;
    con.disconnect() ;
    con = null ;
  }
  
}

结果:

图片图片

结论:connectionTimeout参数与什么样的客户端做连接请求没关系。

测试3:

通过Socket建立连接

public class TomcatConnectionTimeoutDemo {
  
  public static void main(String[] args) throws Exception {
    Socket socket = new Socket("127.0.0.1", 8081) ;
    long start = System.currentTimeMillis() ;
    InputStream is = socket.getInputStream() ;
    is.read() ;
    System.out.println(System.currentTimeMillis() - start ) ;
  }
  
}

运行结果:

图片图片

差不多3s后程序结束了,也就是连接断开了。接着测试:

public class TomcatConnectionTimeoutDemo {
  
  public static void main(String[] args) throws Exception {
    Socket socket = new Socket("127.0.0.1", 8081) ;
    long start = System.currentTimeMillis() ;
    final OutputStream os = socket.getOutputStream() ;
    new Thread(() -> {
      Scanner scan = new Scanner(System.in) ;
      while(scan.hasNext()) {
        String content = scan.next() ;
        System.out.println("准备发送:" + content) ;
        try {
          os.write(content.getBytes()) ;
          os.flush() ;
        } catch (IOException e) {
          e.printStackTrace() ;
        }
      }
    }).start() ;
    InputStream is = socket.getInputStream() ;
    is.read() ;
    System.out.println(System.currentTimeMillis() - start ) ;
  }
  
}

结果1(什么也不做):

图片图片

 

结果2(控制台不停的输入内容):

图片图片

程序一开始运行,控制台不停地输入内容,发现程序一直正常,当停留3秒后在输入内容,发现程序又断开了。

结论:connectionTimeout参数是说当客户端与服务器连接以后,如果客户端不输入任何内容,那么超过了connectionTimeout设置的时间后连接会被断开。



Tags:Tomcat   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除。
▌相关推荐
connectionTimeout参数是说当客户端与服务器连接以后,如果客户端不输入任何内容,那么超过了connectionTimeout设置的时间后连接会被断开。​环境:springboot2.5.12application....【详细内容】
2023-09-01  Tags: Tomcat  点击:(0)  评论:(0)  加入收藏
Tomcat简介Tomcat 是 Java 语言开发的,Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,是 Apache 软件基金会的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他...【详细内容】
2022-10-17  Tags: Tomcat  点击:(291)  评论:(0)  加入收藏
01简 介2022年初打算把反序列化漏洞后利用技术给学习下,主要分为回显技术和内存马技术两大模块。因为之前对回显技术有所了解,就先把这块知识给弥补下。02搭建环境采用简单的S...【详细内容】
2022-10-09  Tags: Tomcat  点击:(76)  评论:(0)  加入收藏
一、Tomcat 架构概览 1、Tomcat是什么?Apache Tomcat软件是Jakarta Servlet、 Jakarta Server Pages、 Jakarta Expression Language、 Jakarta WebSocket、 Jakarta Annota...【详细内容】
2022-07-08  Tags: Tomcat  点击:(322)  评论:(0)  加入收藏
https分为单项认证和双向认证。一般https页面上的访问都是单项认证,服务端发送数字证书给客户端,客户单方面验证。而服务端不做验证。而双向认证,需要双方都有证书,然后发送给对...【详细内容】
2022-05-29  Tags: Tomcat  点击:(303)  评论:(0)  加入收藏
Tomcat10升级介绍Tomcat10 修补了之前版本的漏洞,主要是javax的漏洞,导致使用javax jar包的项目不能直接部署,需要使用官方工具转换。Apache官网提供转换程序 https://github.c...【详细内容】
2022-05-26  Tags: Tomcat  点击:(924)  评论:(0)  加入收藏
介绍作为常用的http协议服务器,tomcat应用非常广泛。tomcat也是遵循Servelt协议的,Servelt协议可以让服务器与真实服务逻辑代码进行解耦。各自只需要关注Servlet协议即可。 对...【详细内容】
2022-05-11  Tags: Tomcat  点击:(318)  评论:(0)  加入收藏
org.apache.catalina.startup.Catalina // When the 'engine' is found, set the parentClassLoader.digester.addRule("Server/Service/Engine",...【详细内容】
2022-04-19  Tags: Tomcat  点击:(216)  评论:(0)  加入收藏
image.pngTomcat的启动核心流程  前面给大家介绍了Tomcat中的生命周期的设计,掌握了这块对于我们分析Tomcat的核心流程是非常有帮助的,也就是我们需要创建相关的核...【详细内容】
2022-02-28  Tags: Tomcat  点击:(234)  评论:(0)  加入收藏
1、一个简单的 HTTP 服务器在Web应用中,浏览器请求一个URL,服务器就把生成的HTML网页发送给浏览器,而浏览器和服务器之间的传输协议是HTTP,那么接下来我们看下如何用Java来实现...【详细内容】
2022-02-25  Tags: Tomcat  点击:(228)  评论:(0)  加入收藏
▌简易百科推荐
connectionTimeout参数是说当客户端与服务器连接以后,如果客户端不输入任何内容,那么超过了connectionTimeout设置的时间后连接会被断开。​环境:springboot2.5.12application....【详细内容】
2023-09-01    Springboot实战案例锦集  Tags:Tomcat   点击:(0)  评论:(0)  加入收藏
云服务器是基于云计算技术的一种虚拟服务器,它可以通过互联网实现各种计算和存储任务。与传统服务器相比,云服务器具有以下几个区别:首先,云服务器无需在物理设备上进行部署,而是...【详细内容】
2023-08-31  薯薯薯条    Tags:云服务器   点击:(4)  评论:(0)  加入收藏
问题客户内网系统部署两个后台节点,前面使用Nginx做负载均衡。但出现的问题是, 一台服务器承担了几乎所有流量,而另一台服务器基本上没有任何流量。分析问题出在Nginx的负载均...【详细内容】
2023-08-25  散文随风想  今日头条  Tags:Nginx   点击:(6)  评论:(0)  加入收藏
Nginx作为一款高性能的Web服务器和反向代理服务器,被广泛用于应用部署和负载均衡。在安全环保意识的逐渐提高下,HTTPS也成为现代Web应用中必不可少的一环。本篇文章将重点介绍...【详细内容】
2023-08-25  散文随风想    Tags:Nginx   点击:(8)  评论:(0)  加入收藏
在现代科技领域,服务器和网络设备的迅猛发展为数据存储和处理提供了强大支持。而1U、2U和标准19寸机架作为这些设备的基础,扮演着关键角色。本文将深入探讨这些机架的定义、用...【详细内容】
2023-08-22  亚托克索的日记    Tags:机架   点击:(1)  评论:(0)  加入收藏
不废话,直接入题。作为一个Linux系统使用者,工作基本上大多也是与Linux系统打交道,以往的工作中用过诸如RedHat、Centos、OpenSUSE、Debian、Ubuntu……甚至国产的...【详细内容】
2023-08-17  行走在秦岭的云  今日头条  Tags:服务器   点击:(3)  评论:(0)  加入收藏
openrestyOpenResty介绍OpenResty 是一个基于 Nginx 服务器的全功能 Web 应用服务器,它集成了大量的第三方模块,提供了更丰富的功能和性能优化。OpenResty 的核心是由 Nginx...【详细内容】
2023-08-12  SuperOps  今日头条  Tags:apigateway   点击:(22)  评论:(0)  加入收藏
一、创建.net core web 应用1、首先打开vs2019创建好.net core web应用,简单的注入IConfiguration 便于打印端口号展示效果。 1 private readonly ILogger<HomeContr...【详细内容】
2023-08-10  IT技术资源爱好者  今日头条  Tags:反向代理   点击:(5)  评论:(0)  加入收藏
在如今数字化时代,越来越多的企业和个人开始意识到云计算的重要性,而亚马逊云(Amazon Web Services,简称AWS)作为全球领先的云服务提供商之一,受到了广泛关注。那么,对于初次接触亚...【详细内容】
2023-08-08    爱看设备  Tags:云服务器   点击:(16)  评论:(0)  加入收藏
零、Nginx架构图Nginx 架构图如下,这个开源玩意发源于俄罗斯,真是做得厉害,架构这么轻巧还能轻松应对好几万的并发访问量! 一、Nginx请求处理流程 二、Nginx线程池工作流程核心...【详细内容】
2023-08-05  杨工888    Tags:Nginx   点击:(17)  评论:(0)  加入收藏
站内最新
站内热门
站内头条