netty https下内存溢出问题.

  在最近几个月使用netty实现了网络开发,其中就遇到使用https导致内存溢出的情况. 过程描述如下:

 1, 在第一个版本当中,为了性能考虑,netty默认使用了内存池以及堆外内存,在测试环境上表现良好,然而在线上的使用过程中发现,运行一周之后netty+https会导致内存溢出. 测试与生产的差异在于生产环境因为用户的复杂性,会使用不同的ssl加密方法, 以及存在大量socket的创建,关闭过程,这在测试环境上比较难重现。

 2,测试环境下在大量模拟tcp请求,并且断开重连测试,也没有出现内存泄露的情况。

3,最后关闭了netty的内存池,使用堆内内存处理, 问题得到解决。

你可能感兴趣的:(JAVA)