Netty3.x提供了MemoryAwareThreadPoolExecutor,它允许在I/O线程模型和执行业务逻辑的线程模型之间进行流控制。
在4.0API中,情况发生了很大的变化,每个处理程序基本上都提供了自己的输入缓冲区,并且可以在自己的专用线程中执行。如何对运行在单独线程中的速度较快且写入较慢的业务处理程序的输入缓冲区的解码器进行限制或阻塞?
发布于 2013-06-29 16:23:53
在cr2中,您可能会利用允许限制入站缓冲区的功能,但它不会为您的问题提供开箱即用的解决方案。然而,在cr6中,这个功能已经消失了。我也希望看到这个问题的答案。
更新:这是我想出来的一个基本实现。当然,肯定有更好的方法:https://stackoverflow.com/questions/17389396/netty-throttling-reads-example
https://stackoverflow.com/questions/16780701
复制相似问题