说明
作为springboot开发者,使用最多的就是tomcat,这是springboot默认的容器技术,而且是内嵌式的tomcat,springboot作为目前最火的java web框架,可以说容器也起到了绝对的优势。
对于一个应用,我们也只需要将应用打包成一个jar包,以java -jar直接运行,而无需再打成war包的形式外搭tomcat服务器的方式运行应用。但是也会考虑使用undertow容器去替代tomcat。
undertow概述
undertow作为springboot默认集成的三大容器之一(tomcat、jetty、undertow);
首先它是red hat公司旗下的开源产品, 由java语言开发,是一款灵活的高性能web服务器;
不仅支持阻塞io还支持非阻塞io。由于undertow通过java语言开发,即在java项目中使用可直接嵌入。
而且,undertow完全支持servlet和web socket,在高并发情况下表现非常出色,总之,undertow在性能和内存使用方面都优于jetty、tomcat。
所以这就是为何业界内很多springboot开发者放弃tomcat,选择undertow。
springboot集成undertow
由于springboot优先默认内嵌的是tomcat,所以当你在引入undertow容器时,你就需要先排除掉tomcat,也就是它 spring-boot-starter-tomcat,
因此你需要找到spring-boot-starter-web这个starter,把tomcat去掉,然后再引入undertow的依赖,然后直接启动项目即可。
<!--web依赖-->
<dependency>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-web</artifactid>
    <!--排除spring-boot-starter-tomcat-->
    <exclusions>
        <exclusion>
            <groupid>org.springframework.boot</groupid>
            <artifactid>spring-boot-starter-tomcat</artifactid>
        </exclusion>
    </exclusions>
</dependency>
<!-- 添加undertow容器 -->
<dependency>
    <groupid>org.springframework.boot</groupid>
    <artifactid>spring-boot-starter-undertow</artifactid>
</dependency>总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
 
             我要评论
我要评论 
                                             
                                             
                                             
                                             
                                            
发表评论