Spring boot 中 Undertow 配置线程数

Spring boot 弃用tomcat 作为内嵌服务器,转用undertow

configurations {
    compile.exclude module: "spring-boot-starter-tomcat"
}
compile "org.springframework.boot:spring-boot-starter-undertow:$springBootVersion"

但是undertow 有一些设置

server:
    undertow:
      io-threads: 4
      worker-threads: ?

io-threads 好理解,根据CPU有几核,就填写几。但是worker-threads呢?网上的都写的,根据服务器负载来填。测试过,如果不填写,默认最少会初始化24个线程,最多60个线程。但是60个线程的时候,CPU和内存的占用对于4核8G的配置来说,也没有占用多少。难道是要挨个去尝试?试试多少个线程的时候,能把CPU和内存的利用率达到最高?

PS:附线程查询:Linux最大线程数限制及当前线程数查询

查询当前某程序的线程或进程数

pstree -p `ps -e | grep java | awk ‘{print $1}’` | wc -l

pstree -p 3660 | wc -l

--------------------------------------------------------------------------

这里引用网友Lovnx的回复,方便大家查找结果:

默认值:ioThreads = Math.max(你的机器核数, 2); workerThreads = ioThreads * 8; 后者要看服务器最大支持的文件句柄数量,设太大应用都会启动失败的,结合你应用承担的体量来设置。

----------------------

分割线,今天看到了一篇CSDN涨粉秘诀,就是设置粉丝可见,默认点一下就可以了。相信看到这里的你已经成为我的粉丝了,哈哈,不过觉得内容不好,可以取关,或者给我留言建议,欢迎交流! 

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
配置Undertow的最大连接,需要将默认的Tomcat容器改为Undertow,并设置相应的参。具体的配置步骤如下: 1. 在配置文件排除Spring Boot的Tomcat容器依赖。在pom.xml文件添加以下代码: ```xml <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> ``` 2. 创建一个配置类,比如TomcatConfig,用于配置Undertow容器。在配置添加以下代码: ```java @Configuration public class TomcatConfig { @Bean public ConfigurableServletWebServerFactory webServerFactory() { UndertowServletWebServerFactory undertowFactory = new UndertowServletWebServerFactory(); undertowFactory.addBuilderCustomizers(builder -> { builder.setIoThreads(200); // 设置最大IO线程 builder.setWorkerThreads(2000); // 设置最大工作线程 }); undertowFactory.setPort(8005); // 设置端口号 undertowFactory.setContextPath("/api-g"); // 设置上下文路径 return undertowFactory; } } ``` 通过以上配置,可以将默认的Tomcat容器改为Undertow,并设置最大连接。在Undertow配置,通过addBuilderCustomizers方法可以设置最大IO线程和最大工作线程。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [7 种提升 SpringBoot 吞吐量神技!](https://blog.csdn.net/weixin_46768610/article/details/124335618)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [SpringBoot 性能太差?试试这几招](https://blog.csdn.net/m0_69305074/article/details/126904439)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员imHou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值