NettyMina (转)
2019独角兽企业重金招聘Python工程师标准>>>
mina比netty出现的早,都是Trustin Lee的作品; mina将内核和一些特性的联系过于紧密,使得用户在不需要这些特性的时候无法脱离,相比下性能会有所下降;netty解决了这个设计问题; netty的文档更清晰,很多mina的特性在netty里都有; netty更新周期更短,新版本的发布比较快; 它们的架构差别不大,mina靠apache生存,而netty靠jboss,和jboss的结合度非常高,netty有对google protocal buf的支持,有更完整的ioc容器支持(spring,guice,jbossmc和osgi); netty比mina使用起来更简单,netty里你可以自定义的处理upstream events 或/和 downstream events,可以使用decoder和encoder来解码和编码发送内容; netty和mina在处理UDP时有一些不同,netty将UDP无连接的特性暴露出来;而mina对UDP进行了高级层次的抽象,可以把UDP当成"面向连接"的协议,而要netty做到这一点比较困难。mina把TCP和UDP一样当"有连接"的处理,一个UDP请求会按照address产生一个新的 IoSession,过期时间是1分钟,这样做的好处是显然的,但是对于有性能要求的项目就不好了,对一个无连接的东西cache 1分钟,大多数时候可能是白cache了,做无用功。 Mina这样做可能还有个初衷是连续解码用的,比如一个包太大了,分了两次传输;但是这样的设计应该是udp大忌了。 mina是heapbytebuffer,每次bytebuffer.allocate去分配。同时根据『满则增大一倍,两次一半则缩减一半』 netty是directbytebuffer,同时应该buffercache的存在,在buffersize不变的情况下,重复使用。分配大小是依赖buffersize分配表,有一套预测算法来分配。快速应对增大,而缓慢shrink
转载于:https://my.oschina.net/beloser/blog/178831
NettyMina (转)相关推荐
最新文章
- 分模块开发创建父工程——(六)
- 研究之路的秘密花园-个人经验分享-台湾朝阳科技大学陈金铃教授
- Ubuntu下编译内核
- windows adb shell 乱码
- infoq 视频下载 [转老赵]
- TensorFlow入门:TensorFlow工作原理
- 谭浩强C语言(第三版)习题9.10
- C/C++教程 第十七章 —— MFC开发多人聊天室
- c# 图像识别 车辆型号【百度AI】
- 网易公开课“Programming Paradigms” 笔记
- ERP系统具有哪些功能?
- erp实施 数据库面试题_erp实施顾问笔试题有什么_erp实施顾问笔试题
- java 父类构造_java 父类构造器
- 2020李宏毅学习笔记——14.Convolution Netural Network
- FTP服务器异地备份文件,ftp异地备份
- Mysql中的升序和降序以及一个字段升序和一个字段降序
- 安卓逆向学习资料推荐
- 基于贝叶斯生存分析的《冰与火之歌》人物死亡率分析
- Components of Ryu
- NB-IoT天线同轴电缆RG316、RG174、RG178