Spring Boot 教程

Spring Boot 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/spring_boot-tomcat-tuning.html

Spring Boot Tomcat 配置及调优详解

Spring Boot 内置 Web 容器详解 Spring Boot 内置 Web 容器详解


Spring Boot 内置 Tomcat Web 容器,一般在实际操作中,采用默认配置,但是也可以根据实际情况调优内置容器,以提高服务性能。

常用参数

下面列出了 Spring Boot Tomcat 常用的配置参数:

server.port = 8080
服务对外提供的端口,默认 8080。
server.tomcat.max-threads = 200
最大线程数,每接到一个 http 请求,tomcat 都会对应一个线程来处理该请求,最大线程数决定了 web 服务的最大并发处理能力,默认 200。该配置项结合当前应用的内核内存信息进行调参,1 核 2g 内存建议配置为 200,按照该参照值,2 核 4g 内存建议配置为 400,以此类推,4 核 8g 内存为 800,8 核 16g 内存为 1600,但是这些都是推荐建议,需要和实际业务及压测结果结合在一起使用。
server.tomcat.accept-count = 100
最大等待数,当请求数达到 tomcat 最大线程数时,新的请求会放在等待队列中,该参数就是能够接收的最大等待数,默认是 100,如果等待队列也满了,tomcat 就会拒绝新的请求(connection refused)。一般情况下,该参数和 max-threads 一起调整,调优设置建议最大线程数的 0.5 倍到 1.0 倍,如果设置过大,请求等待可能会很长,如果设置过小,请求可能立马返回 connection refused。