SpringBoot将默认的Tomcat替换为Undertow
SpringBoot将默认的Tomcat替换为Undertow
SpringBoot 可以无缝衔接三大 Servlet 容器,Tomcat、Jetty、Undertow,但是 Undertow 性能相较前两者更加优异
SpringBoot 快速集成Undertow
添加依赖
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
修改application.yml文件
server:
  undertow:
    # 日志设置
    accesslog:
      # 开启日志
      enabled: true
      # 日志文件夹
      dir: logs
    # 线程配置
    threads:
      # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
      # 不要设置过大,如果过大,启动项目会报错:打开文件数过多
      io: 16
      # 阻塞任务线程池, 当执行类似servlet请求阻塞IO操作, undertow会从这个线程池中取得线程
      # 它的值设置取决于系统线程执行任务的阻塞系数,默认值是IO线程数*8
      worker: 256
    # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
    # 每块buffer的空间大小,越小的空间被利用越充分,不要设置太大,以免影响其他应用,合适即可
    buffer-size: 1024
    # 是否分配的直接内存(NIO直接分配的堆外内存)
    direct-buffers: true
启动项目

可以看到项目启动成功
- 感谢你赐予我前进的力量
                        
                        
                            
赞赏者名单
                            因为你们的支持让我意识到写文章的价值🙏
                        
                    
            本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 木子李
        
     评论
            
                匿名评论
                隐私政策
            
            
                你无需删除空行,直接评论以获取最佳展示效果
            
         
            
        

 
                         
                         
                         
                         
                 
             
            