BIO、NIO、AIO及java中NIO 与netty的 IOCP区别联系

1 有人能说清楚JAVA7 NIO NETTY IOCP之间的联系吗?

 原文链接:https://www.zhihu.com/question/20853629

不过这似乎是3年前的问题?

还没有找到答案吗?

那我说一下吧

iocp和poll/epoll这些是操作系统层面的东西

iocp是win,poll(linux和unix)

后者在linux上可以改成epoll,在mac或bsd上可以改成kqueue,性能更佳,使用netty的native transport特性,在vert.x最新版本中亦支持这两种优化,很爽的

nio是java或者说jvm层面的东西,说白了就是基于iocp&poll的一个统一的java接口

netty是jvm之上框架层面的东西,说白了就是一个基于nio的框架

可以看到三个层次,后者基于前者

操作系统是啥?windows,macosx,linux(其实这个是kernal,你懂的,不懂百度下就有)

jvm是虚拟机,是我们经常需要安装的这么一个东西,这个虚拟机以及开发工具(jdk)

定义了一个nio的api,封装了操作系统的这些网络接口,java是跨平台的嘛

所以在我们使用java的这些api的过程中,不需要去区分是哪个操作系统

最终暴露给java用户的,是一个统一的api,这个api就是nio

除了nio以外,还有ai

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菠萝科技

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值