Undertow web容器

Undertow是一款由Red Hat开发的基于NIO的高性能Web服务器,被WildFly采用为默认Web服务器。其特点是支持Servlet 4.0,提供阻塞和非阻塞API,性能优于Tomcat。本文将介绍Undertow的使用,包括依赖添加、配置、HTTP 2.0支持及深入探讨。
摘要由CSDN通过智能技术生成

一、Undertow 介绍

Undertow 是红帽公司开发的一款基于 NIO 的高性能 Web 嵌入式服务器。

红帽公司(RedHat)的开源产品,且是 WildFly8(JBoos) 默认的 Web 服务器.;

  • 官网API给出一句话概述Undertow:
    Undertow is a flexible performant web server written in java, providing both blocking and non-blocking API’s based on NIO.
    译文: Undertow是一个用java编写的灵活的高性能Web服务器,提供基于NIO的阻塞和非阻塞API。

  • 官网API总结特点:

     Lightweight(轻量级)
        Undertow非常轻量级,Undertow核心jar包在1Mb以下。 它在运行时也是轻量级的,有一个简单的嵌入式服务器使用少于4Mb的堆空间
    
     HTTP Upgrade Support(支持http升级)、HTTP/2 Support
        支持HTTP升级,允许多个协议通过HTTP端口进行多路复用
        支持HTTP 2.0
    
     Web Socket Support(支持WebScoket)
        Undertow提供对Web Socket的全面支持,包括JSR-356支持
    
     Servlet 4.0  
         Undertow提供对Servlet 4.0的支持,并兼容之前版本,包括对嵌入式servlet的支持。 还可以在同一部署中混合Servlet和本机Undertow非阻塞处理程序
    
     Embeddable(可嵌入的)
         Undertow可以嵌入在应用程序中或独立运行,只需几行代码
    
     Flexible(灵活性)
       Undertow框架jar包: undertow-core.jar undertow-servlet.jar
    

总结:
1、Undertow是一个Web服务器,那么它就需要具备的现代Web服务器的基本特性,比如Servlet,JSP,文件服务器,代理服务器,安全认证等。undertow目前已经实现了绝大多数功能,并且因为wildfly通过了JavaEE7 TCK认证,即通过Servlet 3.1认证的Web服务器和容器,最新版本对servlet 4.0 也支持。
2、Undertow的一个设计目的就是为了嵌入当作web服务器使用。当前,很多Java和其他语言的开源项目,都内嵌一个小型的web server,来提供服务能力,可以是输出html,也可以是输出REST方式的json文本。支持HTTP(s)协议,对于很多应用程序已能够满足需要;
3、默认情况下 Spring Cloud 使用 Tomcat 作为内嵌 Servlet 容器,可启动一个 Tomcat 的 Spring Boot 程序与一个 Undertow 的 Spring Boot 程序,通过 VisualVM 工具进行比较,可看到 Undertow 性能优于 Tomcat;
4、官网参考:http://undertow.io

二、使用undertow

2.1、依赖添加

<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>
    
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值