28人参与 • 2025-08-23 • Java
作为springboot开发者,使用最多的就是tomcat,这是springboot默认的容器技术,而且是内嵌式的tomcat,springboot作为目前最火的java web框架,可以说容器也起到了绝对的优势。
对于一个应用,我们也只需要将应用打包成一个jar包,以java -jar直接运行,而无需再打成war包的形式外搭tomcat服务器的方式运行应用。但是也会考虑使用undertow容器去替代tomcat。
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优先默认内嵌的是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>
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论