Netty 4.1.31.Final 发布了,该版本包含错误修复,以及一些重要的改进和性能提升。除此之外,还提供了对 TLSv1.3 的支持(通过 Java 11 或 netty-tcnative / netty-tcnative-boringssl-static 实现)。
重要的变更内容:
Fix leak and corruption bugs in CompositeByteBuf (#8438)
Optimize AbstractByteBuf.getCharSequence() in US_ASCII case (#8392)
(fix) incorrect reachability assumption in ResourceLeakDetector (#8410)
Correctly detect if KeyManagerFactory is supported by OpenSSL even when sun.security.x509.* can not be accessed and bouncycastle is not on the classpath. (#8415)
Reduce overhead by ByteBufUtil.decodeString(...) which is used by
AbstractByteBuf.toString(...)
andAbstractByteBuf.getCharSequence(...)
(#8388)CompositeByteBuf.decompose(...) does not correctly slice content (#8403)
Allow to use TLSv1.3 with netty-tcnative withe java versions prior to 11 (#8394)
Add support for TLSv1.3 #8293)
Add support for boringssl and TLSv1.3 (#8412)
Ensure OpenSslEngine will not try to call SSL_free multiple times even when constructor throws #8399)
Add full JdkSslContext public constructor #8389)
Prevent NPE when attempting to set client key material with no alias #8378)
epoll_wait produces an EINVAL error since 4.1.30 #8350)
Correctly parse /etc/resolv.conf when contain multiple entries for searchdomain #8351)
Correctly decrement pending bytes when submitting AbstractWriteTask fails #8349)
Fix SelectableChannel support in NioEventLoop #8344)
Added option to do busy-wait on epoll #8267)
Ensure X509KeyManager methods are called on the correct time when using server-side and support more methods of ExtendedSSLSession #8283)
Do the same extended checks as the JDK when a X509TrustManager is used with the OpenSSL provider #8307)
查看 4.1.31.Final 的 issue 追踪了解更多细节。
支持 TLSv1.3
在这个版本中,开发团队以各种方式添加了对它的支持,当一下任何一个条件满足时:
使用 Java11 或更高版本
使用 netty-tcnative(针对 OpenSSL 1.1.1+ 构建)和 Java8 +
使用 netty-tcnative-boringssl-static 和 Java8 +
即可启用 TLSv1.3。也就是说默认情况下没有启用 TLSv1.3 ,所以如果你想使用它,你需要在配置 SslContextBuilder 时显式启用它以使用 TLSv1.3。
下载地址 http://netty.io/downloads.html
Netty 是一个 Java 开源框架。Netty 提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。