1.使用堆外内存来减少数据多次拷贝带来的开销
2.使用一个动态扩容的缓存区,正常操作
3.使用内存池来有效的分配对外内存,类似于操作系统的内存分配方法。好处有不走gc减少gc压力,使用cache减少对外内存的申请次数。当然这种方法肯定是浪费了一部分内存。(在windows下netty不使用这种内存池来管理内存,而是依赖于GC来回收堆外内存引用对象,然后通过PhantomReference 在对象将被回收时release堆外内存)
1.使用堆外内存来减少数据多次拷贝带来的开销
2.使用一个动态扩容的缓存区,正常操作
3.使用内存池来有效的分配对外内存,类似于操作系统的内存分配方法。好处有不走gc减少gc压力,使用cache减少对外内存的申请次数。当然这种方法肯定是浪费了一部分内存。(在windows下netty不使用这种内存池来管理内存,而是依赖于GC来回收堆外内存引用对象,然后通过PhantomReference 在对象将被回收时release堆外内存)
本文标题:2019-04-15 Netty 写
本文链接:https://www.haomeiwen.com/subject/uicpwqtx.html
网友评论