第三行「以代码清单7-7的规则为例」,应该是清单7-8。后面第九行,「若以代码清单7-7」也应该改为清单7-8。
前言说本书基于dubbo 2.6.5版本来写的。203页最后一段倒数第二行,「默认实现是netty4」。在github上面翻了下代码,发现2.6.5及以前版本默认实现都是netty3,2.6.6以后或者2.6.x版本中默认实现才是netty4。希望作者可以在书中做个说明标注一下。
该页底部「代码清单10-6」中,public void callClassB()有重复,应当删除一处,236页顶部删除一个「 } 」。
ActiveLimitFilter的代码并不安全,在大并发情况下会出现限流失败的情况,我确认了一下最新的dubbo代码,在最新代码中已经修复了该问题,方案是:RpcStatus::beginCount传入了最大并发数,通过AtomicInteger::incrementAndGet之后判断当前值是否大于max,如果大了就减回去并继续等待。虽然本节的本意只是简单介绍ActiveLimitFilter的思路,但是我觉得有必要在本小节的末尾声明该代码的局限性,以免误导读者。
表11-2中”存储键”那一列的第一行「/root/interface/consumers/dubbo://ip:port/service?xxx=xxx」 应当改为「/root/interface/consumers/consumer://ip:port/service?xxx=xxx」
第三行「以代码清单7-7的规则为例」,应该是清单7-8。后面第九行,「若以代码清单7-7」也应该改为清单7-8。
前言说本书基于dubbo 2.6.5版本来写的。
203页最后一段倒数第二行,「默认实现是netty4」。在github上面翻了下代码,发现2.6.5及以前版本默认实现都是netty3,2.6.6以后或者2.6.x版本中默认实现才是netty4。希望作者可以在书中做个说明标注一下。
该页底部「代码清单10-6」中,public void callClassB()有重复,应当删除一处,236页顶部删除一个「 } 」。
ActiveLimitFilter的代码并不安全,在大并发情况下会出现限流失败的情况,我确认了一下最新的dubbo代码,在最新代码中已经修复了该问题,方案是:RpcStatus::beginCount传入了最大并发数,通过AtomicInteger::incrementAndGet之后判断当前值是否大于max,如果大了就减回去并继续等待。虽然本节的本意只是简单介绍ActiveLimitFilter的思路,但是我觉得有必要在本小节的末尾声明该代码的局限性,以免误导读者。
表11-2中”存储键”那一列的第一行「/root/interface/consumers/dubbo://ip:port/service?xxx=xxx」 应当改为「/root/interface/consumers/consumer://ip:port/service?xxx=xxx」