我注意到,如果AUTO_READ设置为false,GlobalChannelTrafficShapingHandler将不会限制流量。但是从这个帖子Why Netty 4 "proxy" example has to set channel "AUTO_READ" as false的评论来看,Norman提到AUTO_READ false设置为阻止OOME。我想可以看出为什么控制网络可以填满缓冲区并导致OOME。
当我们启用流量整形时,我们必须处理这种情况或者只是一种权衡吗?
此致
答案 0 :(得分:0)
当auto_read为false时,写限制正常,读限制运行不正常。 如果要开发代理服务器,则可以将GlobalChannelTrafficShapingHandler设置为代理的另一个输出。 像这样的代码:
GlobalChannelTrafficShapingHandler gtsh = <server’s gtsh>
another_ctx.pipeline().addFirst(gtsh)