一、BIO聊天室

不使用线程池

每个线程都对应着一个连接,随着客户端的增多,线程会增多很多,资源浪费也会大量增加,最后耗尽系统资源,服务器崩溃。

使用线程池

使用线程池后,会固定线程的数量,从而从根本上减少了浪费。

二、NIO聊天室

不会为每一个连接都创建一个线程池了,自然性能会大幅提高。

三、AIO聊天室

线程比NIO要多,因为NIO各个类的内部都有线程池,而AIO内部实现里应用了更多线程

四、三种IO模型适应状态

BIO

连接数目少,服务器资源多,开发难度低

NIO

连接数目多,连接时间短,开发难度高

AIO

连接数目多,连接时间长,开发难度高