关于Java的一些NIO框架的一点想法
来源:互联网 发布:小区网络装iptv服务器 编辑:程序博客网 时间:2024/05/22 13:18
闲着有点无聊想写点东西。
问题:生活中工作中,会有人问我javaNIO框架里面 Netty Mina xSocket Grizzly 等等哪个比较好?
在这里写一下自己的感受,也算是总结一下吧
在我的印象中。不管是什么NIO框架。本身其实都是对Java底层的一种在封装。封装一套更简便,更易于扩展的一套东西以方便开发者使用。所以性能上也许会有所差异,但是绝对没有java和C++之间这么多。(代码写的太烂的除外,不过想要使用java写出很烂的代码也比较困难。)这些框架在性能方面差别不会超过1%。
Mina和Netty开始。因为这两个NIO框架的创作者是同一个人Trustin Lee (韩国人)。GitHub主页地址 :https://github.com/trustin。尽管创作者现在已经不专注与开发了。但是框架的后续开发和继承,可以说都是符合最开始的设定的。两个框架的架构设计思路基本一致。
Netty从某种程度上讲是Mina的延伸和扩展。解决了一些Mina上的设计缺陷,也优化了一下Mina上面的设计理念。
另一方面Netty相比较Mina更容易学习。API更简单。详细的范例源码和API文档。更活跃的论坛和社区。更高的代码更新维护速度。
我想不出什么理由来不选择Netty。
xSocket:是一个轻量级的基于nio的服务器框架用于开发高性能、可扩展、多线程的服务器。该框架封装了线程处理、异步读/写等方面。(只是对Java的NIO做了最简单的封装,以便于开发使用。)
Grizzly : 是一种应用程序框架,专门解决编写成千上万用户访问服务器时候产生的各种问题。使用JAVA NIO作为基础,并隐藏其编程的复杂性。容易使用的高性能的API。带来非阻塞socketd到协议处理层。利用高性能的缓冲和缓冲管理使用高性能的线程池。
下面是网络的一些大神的文章是关于这些NIO框架的。有兴趣的大家可以看看
参考一:Netty&Mina : http://www.kankanews.com/ICkengine/archives/82271.shtml :对比的是Netty3 和Mina2
参考二:Grizzly和Netty以及Mina简单性能对:http://javatar.iteye.com/blog/1126171 :
参考三: tomcat、netty以及nodejs的helloworld性能对比 : http://my.oschina.net/lifeofpi/blog/120210
- 关于Java的一些NIO框架的一点想法
- 关于Java的一点想法
- 关于开发框架设计的一点想法
- 关于项目SSH 框架的一点想法
- 关于Java数组的一点想法
- 关于shiro框架的一些想法
- 关于安全的一些反思 -- QQ被黑后的一点想法
- 关于.net的一点想法
- 关于黄家驹的一点想法
- 关于UML的一点想法
- 关于Wiki 的一点想法
- 关于 EPO 的一点想法
- 关于屏蔽的一点想法
- 关于J2SE的一点想法
- 关于离开的一点想法
- 关于需求的一点想法
- 关于REST的一点想法
- 关于REST的一点想法
- python标准模块——time
- 兔子-android studio中安装butterknife插件
- C#使用Monitor类、Lock和Mutex类进行多线程同步
- 小记-STM8S003F3端口复用和端口开漏
- 自定义ViewGroup神器ViewDragHelper
- 关于Java的一些NIO框架的一点想法
- 怎样理解condition
- 深入浅出Mybatis-插件原理
- 在Unity中实现有限状态机
- jedisLock—redis分布式锁实现
- JavaAPI详解系列(6):String类(6)
- JZOJ3997. 树
- 文章标题Fire Net
- Intellij IDEA常用快捷键整理