分享

Undertow中间件

 新用户9973dKbW 2021-06-15

今天有用户问皕杰报表能用Undertow中间吗?皕杰报表6.0是在jdk1.8上编译的,因而只要符合Java EE8规范的应用服务器都是可以用的。

Undertow 是 RedHat(红帽公司)的开源产品,采用 Java 开发,是一款灵活、高性能的 Web 服务器,提供了基于 NIO 的阻塞/非阻塞 APIs,也是 Wildfly 的默认 Web 容器。据说性能方面吊打 Tomcat这样的神器还是有必要详细了解下。

搜索 Undertow:

页面显示的是 JBoss Community,因为 2006 年 RedHat 收购了 JBoss,那也就不足为怪了。

Undertow 它是一个基于组合的体系结构,可以通过组合一系列小型处理器来构建一个 Web 服务器。这就让我们可以灵活的在 Java EE servlet 4.0 容器和底层非阻塞处理器或者其他更多之间进行选择。

Undertow 被设计成完全可嵌入式的,所以也叫嵌入式容器,具有易于使用的流畅构建 API,另外,Undertow 的生命周期也完全由所嵌入的应用程序所控制。

这也是为什么 Spring Boot 可以直接嵌入 Undertow 的原因,Undertow 它就是为了嵌入而发的。

Undertow 有啥特性?

1)HTTP/2 Support

Undertow 支持 HTTP/2 开箱即用,不需要重写引导类路径。

2)支持 HTTP 升级

支持 HTTP 升级,允许多个协议通过 HTTP 端口上进行复用。

3)支持 Web Socket

Undertow 提供对 Web 套接字的全面支持,包括对 JSR-356 的支持。

4)支持 Servlet 4.0

Undertow 提供了对 Servlet 4.0 的支持,包括对嵌入式 Servlet 的支持,还可以混合部署 Servlet 和原生 Undertow 非阻塞处理程序。

5)可嵌入式

Undertow 可以嵌入到应用程序中,也可以通过几行代码独立运行。

6)高灵活性

一个 Undertow 服务器是通过链式处理器来配置的,可以根据需要添加功能,因此可以避免添加没有必要的功能。

虽然 Undertow 性能很炸,但你可以去网上找一圈,根本没啥学习资料。

所以,对于学习和一般应用来说,Tomcat 足矣,一方面 Tomcat 学习资料多,另一方面 Tomcat 用的更广泛,很多坑别人帮你踩了,很多漏洞也已经暴露出来了。

那于那些一定要追求极致性能的又不想优化 Tomcat 的,可以考虑使用 Undertow,但同时你要有能力 Hold 住它,需要一定的积累经验,不然出一个问题你线上卡半天显然是不愿意看到的。

Undertow 性能如何?

去测试对比一下吧。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多