SpringBoot中使用undertow替换tomcat方式

一、相关介绍  

       undertow,jetty和tomcat可以说是java web项目当下最火的三款服务器,tomcat是apache下的一款重量级的服务器,不用多说历史悠久,经得起实践的考验。然而:当下微服务兴起,spring boot ,spring cloud 越来越热的情况下,选择一款轻量级而性能优越的服务器是必要的选择。spring boot 完美集成了tomcat,jetty和undertow

       网上有人做过对比三个服务器引擎,发现在Undertow在负载过重情况下比Jetty和Tocmat更加顽强,实践证明在负载继续加大情况下Undertow的成功率高于其它两者,但是在并发不是太大情况下三款服务器整体来看差别不大。

二、替换方法

1、在pom.xml中替换依赖


   org.springframework.boot
   spring-boot-starter-web
   
       
          org.springframework.boot
          spring-boot-starter-tomcat
       
   



   org.springframework.boot
   spring-boot-starter-undertow

2、在application.yml或application.properties配置文件中增加配置

server:
  port: 8081
  # 下面是配置undertow作为服务器的参数
  undertow:
    # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接, 默认设置每个CPU核心一个线程
    io-threads: 4
    # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程,它的值设置取决于系统的负载
    worker-threads: 20
    # 以下的配置会影响buffer,这些buffer会用于服务器连接的IO操作,有点类似netty的池化内存管理
    # 每块buffer的空间大小,越小的空间被利用越充分
    buffer-size: 1024
    # 是否分配的直接内存
    direct-buffers: true

配置比较简单,和tomcat使用基本一样,然后就可以快乐的使用undertow了。

你可能感兴趣的:(JAVA)