1. Undertow 简介
Undertow
是一个采用 Java 开发的灵活的高性能 Web 服务器,提供包括阻塞和基于
NIO
的非堵塞机制。
Undertow
是红帽公司的开源产品,是 Wildfly 默认的 Web 服务器。
Undertow
提供一个基础的架构用来构建 Web 服务器,这是一个完全为嵌入式设计的项目,提供易用的构建器 API,完全向下兼容
Java EE Servlet 3.1
和低级非堵塞的处理器。
2. Undertow特点
- 高性能 在多款同类产品的压测中,在高并发情况下表现出色。
- Servlet4.0 支持 它提供了对 Servlet4.0 的支持。
- Web Socket 完全支持,包括JSR-356,用以满足 Web 应用巨大数量的客户端。
- 内嵌式 它不需要容器,只需通过 API 即可快速搭建 Web 服务器。
- 灵活性 交由链式Handler配置和处理请求,可以最小化按需加载模块,无须加载多余功能。
- 轻量级 它是一个 内嵌Web 服务器, 由两个核心 Jar 包组成
3. 替换默认的Tomcat
Spring boot 默认使用
Tomcat
内嵌容器 。依赖于
spring-boot-starter-web
。我们只需要排除
Tomcat
依赖。引用
Undertow
就可以了,
maven
配置如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId