在netty框架中,如果未正确处理异常,是否会通过创建线程并使其处于运行状态而留给Ddos攻击?
以下是我所面对的问题:
管道中的一个处理程序抛出异常。
这就是exceptionCaught
的实施方式。
它只记录服务器上的错误。我需要做些什么来正确处理吗?
这会导致资源耗尽吗?
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {
logger.error("Error in netty read/write: ", cause);
}
答案 0 :(得分:1)
如果您无法从错误中恢复,通常您要做的就是关闭Channel
。几乎所有时间都是一个好主意。
请在记录后将ctx.close()
添加到exceptionCaught方法。