物联网

详解Tomcat配置参数connectionTimeout意义

字号+作者:创站实验室来源:人工智能2025-11-26 20:52:43我要评论(0)

环境:springboot2.5.12application.yml配置复制server: port: 8081

环境:springboot2.5.12

application.yml配置

复制server: port: 8081 tomcat: maxThreads: 10 maxConnections: 10 acceptCount: 1 connectionTimeout: 30001.2.3.4.5.6.7.

测试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" ; } }1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.

发现程序能正常地响应 。详解

结论: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 ; } }1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.

结果:

图片

结论: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 ) ; } }1.2.3.4.5.6.7.8.9.10.11.

运行结果 :

图片

差不多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.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.

结果1(什么也不做) :

图片

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

图片

程序一开始运行,控制台不停地输入内容,源码下载参数发现程序一直正常 ,意义当停留3秒后在输入内容  ,详解发现程序又断开了。香港云服务器配置

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

配置

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 消息称数百个 GitHub 存储库被黑客注入恶意代码,安全公司呼吁用户使用新版令牌

    消息称数百个 GitHub 存储库被黑客注入恶意代码,安全公司呼吁用户使用新版令牌

    2025-11-26 19:11

  • 安全运营之浅谈SOAR剧本设计

    安全运营之浅谈SOAR剧本设计

    2025-11-26 18:58

  • 建立安全运营中心(SOC)威胁建模

    建立安全运营中心(SOC)威胁建模

    2025-11-26 18:49

  • API 安全手册:需要做什么来保护API?

    API 安全手册:需要做什么来保护API?

    2025-11-26 18:13

网友点评