Netty Epoll API 支持 ARM aarch64 架构

7 篇文章 0 订阅
6 篇文章 0 订阅
Netty4.1.50.Final开始支持ARM aarch64架构,为Linux-aarch_64环境提供了EpollAPI。之前版本仅支持linux-x86_64,导致aarch64环境下无法使用Epoll。现在通过指定classifier为linux-aarch_64,开发者可以在aarch64机器上利用Epoll提升性能,优化服务器的IO操作。
摘要由CSDN通过智能技术生成

Netty 4.1.50.Final 提供了对 ARM aarch64 结构的 Epoll API 支持。

我们在使用 Netty 的过程中,可能会使用 netty-transport-native-epoll 提高部署在 Linux 服务器的性能。

<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-transport-native-epoll</artifactId>
    <version>4.1.49.Final</version>
    <classifier>linux-x86_64</classifier>
</dependency>

在代码中使用:

bossGroup = Epoll.isAvailable() ? new EpollEventLoopGroup(1) : new NioEventLoopGroup(1);
workerGroup = Epoll.isAvailable() ? new EpollEventLoopGroup(workerThreads) : new NioEventLoopGroup(workerThreads);
new ServerBootstrap()
		.group(bossGroup, workerGroup)
        .channel(Epoll.isAvailable() ? EpollServerSocketChannel.class : NioServerSocketChannel.class)
        // 省略部分代码...

在 Netty 4.1.50.Final 之前的版本,netty-transport-native-epoll 只提供了 linux-x86-64 的 classifier。如果环境是 aarch64 的 Linux 机器,Epoll.isAvailable() 将返回 false,无法使用 EpollServerSocketChannel 等 Netty 提供的 Epoll API。

在 Netty 4.1.50.Final 之后,我们可以指定 classifier 为 linux-aarch_64,即可在 aarch64 的环境使用 Netty 的 Epoll API。

<dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-transport-native-epoll</artifactId>
    <version>4.1.50.Final</version>
    <classifier>linux-aarch_64</classifier>
</dependency>

https://repo1.maven.org/maven2/io/netty/netty-transport-native-epoll/4.1.50.Final/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wuweijie@apache.org

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值