BIO(Buffer Input/ Output ,同步的通信模式 )
BIO一请求一线程
一个线程负责连接
缺点,缺乏弹性伸缩,并发大的时候线程处理不过来(有n个客户端,统一acceptor接收,然后服务端就会创建n个线程)
伪异步IO通信
伪异步IO利用线程池负责连接,m请求n回答
但线程池会阻塞,线程池会设置最大线程数,消息队列大小,当客户端数据量太大就处理慢(线程池会阻塞
NIO通信(非阻塞同步的通信模式)
使用缓冲区Buffer(在读写的时候,都是先从缓冲区读,先写入缓冲区)
有通道Channel(双向的,可以用读写同时进行)
多路复用器(不断地轮询channel,无最大连接数限制)
AIO通信(非阻塞异步的通信模式)
连接注册读写事件和回调函数
读写方法异步
主动通知程序
(不需要 多路复用器不断地轮询channel,简化了操作模型)
网友评论