我们有一个基于 Netty 的应用程序,它在 CPU 负载过重时停止工作。我很确定原因是 HashedWheelTimer 以 100% 的 CPU 使用率跳过存储桶,并且从不触发其主要部分任务的执行。
这种高负载不时发生在我们的服务器上,并且是不可预测的,但不会持续很长时间。无论如何,这对于我们客户的设备来说已经足够了 DDoS 我们的服务器不会因为 HashedWheelTimer 故障而断开未经授权的设备。
所以问题是:我说的对吗?HashedWheelTimer 真的有这个问题吗?我们实现了计时器类,它将触发所有时间到的事件。而且我认为在标准的 Netty 发行版中需要这样的课程。