netty系列之:NIO和netty详解
简介 netty为什么快呢?这是因为netty底层使用了JAVA的NIO技术,并在其基础上进行了性能的优化,虽然netty不是单纯的JAVA nio,但是netty的底层还是基于的是nio技术。 nio是JDK1.4中引入的,用于区别于传统的IO,所以nio也可以称之为new io。 nio的三大核心是Selector,channel和Buffer,本文我们将会深入探究NIO和netty之间的关系。 NIO常用用法 在讲解netty中的NIO实现之前,我们先来回顾一下JDK中NIO的selector,channel是怎么工作的。对于NIO来说selector主要用来接受客户端的连接,所以一般用在server端。我们以一个NIO的服务器端和客户端聊天室为例来讲解NIO在JDK中是怎么使用的。 因为是一个简单的聊天室,我们选择Socket协议为基础的ServerSocketChannel,首先就是open这个Server channel: ServerSocketChannel serverSocketChannel = ServerSocketChannel.open(); serve...