我有一个使用 netty 框架编写的处理大约 40k msg/sec 的网络应用程序,我想减少垃圾收集器调用的次数。在分析时我发现有大量的 byte[]
实例,我怀疑它来自这部分代码:
public class MessageHandler extends SimpleChannelHandler {
public void messageReceived(ChannelHandlerContext ctx, final MessageEvent e) {
ChannelBuffer message = (ChannelBuffer) e.getMessage();
}
}
是否有可能强制 netty 以某种方式重用/池 ChannelBuffers
以防止它每次都构造它们?
最佳答案
我们计划实现缓冲池,但尚未完成。
关于java - 如何减少网络垃圾的产生?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9108930/