首页 > Web开发 > 详细

Netty感悟

时间:2019-10-02 11:48:11      阅读:117      评论:0      收藏:0      [点我收藏+]

  netty 可以学习的不仅是网络库,还包含了线程模型、如何写java异步交互、定制的缓存模型、对于直接内存的池化管理、内部类的巧妙用法、优秀的设计模式、以及对于一些罕见网络通信的bug的处理、跨平台的思考。

注:

堆外内存:堆内存容易受GC影响导致网络传输下因GC的影响导致内存地址变化,内存泄漏,减少异步编程模型的困难度
1、堆内存储:速度快,但是容量有限。
2、堆外(OffHeapStore)存储:被称为BigMemory,只在企业版本的Ehcache中提供,原理是利用nio的DirectByteBuffers实现,比存储到磁盘上快,而且完全不受GC的影响,可以保证响应时间的稳定性;但是direct buffer的在分配上的开销要比heap buffer大,而且要求必须以字节数组方式存储,因此对象必须在存储过程中进行序列化,读取则进行反序列化操作,它的速度大约比堆内存储慢一个数量级.
(注:direct buffer不受GC影响,但是direct buffer归属的的JAVA对象是在堆上且能够被GC回收的,一旦它被回收,JVM将释放direct buffer的堆外空间.)"

Netty感悟

原文:https://www.cnblogs.com/JoinFyc/p/11616934.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!