持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第1天,点击查看活动详情
前言
随着互联网的发展,越来越多的人们体验到了互联网的快乐,但是仅仅互联网还不够好,人们想要优质的生活、高效的生活、弹性的生活,如果可以甚至可以科技让他们不生活2333。在这样的大环境下物联网的诞生就是为了让人们生活的更舒服,而互联网的后面又有着大数据、人工智能,这一切的组成都离不开互联网。而这些与我们今天的新开的篇章Netty有什么关系呢?在上述背景下需要一项技术可以驾驭高并发与大数据处理大量的网络IO请求,早在前期这样的技术已经无法承受,而服务器的卡慢与崩塌势必会带来不可避免的后果,比如用户投诉,服务器承受不住压力崩溃、服务器成本增加等等。而这一切直到netty的出现为小公司带来福音,为大公司带来可靠性加固。
netty介绍
netty是JBoss提供的开源java框架,他的优点也是为了解决上述的痛点所以研发的。他是一个快速开发高并发高可用高可靠的网络服务器应用。本体提供了异步的和时间驱动的程序框架和工具,他所有的IO操作都是异步非阻塞的。本质通过一个listener监听器机制来获取IO操作结果。
jdk原生NIO 与 netty
到了这里有些看过java源码的同学应该想问,jdk中就有Nio这种异步非阻塞他跟netty这个是同一个吗?对于这个问题其实本质上是一样的,不管是netty的nio还是jdk的nio,netty只是在jdk的nio基础上封装了一层使得Api更加易于使用,使得开发门槛降低。