BIO:Tomcat7之前用的版本,blocking IO/阻塞IO。实现原理:客户端请求数据,tomcat服务端通过accpet获取新连接,获取之后丢给线程池去处理,但是处理完线程还是处于等待状态(等待这个连接有新的数据过来),不能被释放出来,相当于一个线程只能去处理一个连接,耗费了资源。
NIO:tomcat8之后用的版本,Non-blocking IO(非阻塞IO),又称之为New IO。实现原理:客户端请求数据,tomcat服务端会通过selector选择器去查询有数据的连接,然后交给线程池去处理,并且处理完后会被释放,大大提高了线程资源的利用率。