Undertow
是由JBoss(现为Red Hat)开发的一款轻量级、高性能的Web服务器。它是WildFly应用服务器的默认Web容器,专注于高并发和低延迟的场景。Undertow
基于NIO
(非阻塞I/O)构建,支持HTTP/1.x
、HTTP/2
和WebSocket
协议。
Tomcat
凭借其稳定性、易用性和社区支持成为Springboot
默认的容器。虽然Tomcat
表现足够优秀,但是Undertow
也有其可圈可点的地方。
- 高并发支持:
Undertow
基于NIO
构建,能够高效处理大量并发请求,适合高负载场景。 - 低延迟:由于其非阻塞的设计,
Undertow
在低延迟场景中表现优异。 - 轻量级:
Undertow
的核心代码非常精简,启动速度快,资源占用低。
在资源有限的情况下,尤其是内存和CPU资源紧张的情况下,Undertow
是更好的选择。
上面介绍了Undertow
的优点,那么我们如何在Springboot
项目中使用Undertow作为默认容器呢。
先来看一下,默认Tomcat
容器,启动成功后控制台输出信息
为了使用Undertow
容器,我们需要修改项目的pom.xml
文件,排除掉Tomcat
。
<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>
然后添加Undertow
的依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-undertow</artifactId>
</dependency>
然后重启项目,查看控制台输出
评论 (0)