Netty4:我如何限制连接数?

时间:2013-12-17 13:04:04

标签: java netty

我们使用RaspPi作为服务器平台从中导出一些数据。因此,RaspPi具有有限的资源,我们希望限制例如的连接数。 16。 我们怎么能用Netty 4做到这一点?

我们没有在github上找到针对netty 4的netty 4的开箱即用解决方案(参见:Limit number of connections per IP on Netty)。

是否可以扩展ChannelInboundHandlerAdapter并简单地计算活动连接的数量以及最大值。到达每个新连接上调用close(),如下所示:

private final AtomicInteger activeConnections = new AtomicInteger();

@Override
public void channelActive(ChannelHandlerContext ctx) {
    if (activeConnections.get()<16)
        activeConnections.incrementAndGet();
    else
    ctx.close();
}

@Override
public void channelInactive(ChannelHandlerContext ctx) throws Exception {
    activeConnections.decrementAndGet();
}

0 个答案:

没有答案