因为传统I/O已经跟不上时代进步的步伐,所以Java在jdk1.4之后推出了NIO技术。NIO技术的关键在于缓冲区、通道和选择器[10]。NIO技术将所有的I/O操作放在一个或者几个线程当中,每一个客户端连接对应一个通道,每个通道有唯一的标识。每当有数据需要接收时,线程会将数据先存储到缓冲区,当这份数据被需要时,通过选择器查找到相应的通道获取相应的数据即可。这样的设计大大降低了I/O操作时的线程切换消耗,为开发者提供了编写高并发服务端的技术支持。
1.3.6. MINA框架
Apache MINA(Multipurpose Infrastructure for Network Applications)是Apache组织新推出的一个项目,他提供给开发者一个易于使用的框架,这个框架适用于开发网络应用程序,并且拥有高性能的特点。MINA框架支持使用Java平台提供的NIO技术,使用事件驱动,支持TCP,UDP等各项协议。与此同时,过滤器的设计也让MINA框架拥有了很强的可扩展性。
MINA主要由三大部分组成:
I/O Service:使用Java平台提供的I/O实现客户端和服务端的连接。
I/O Filter Chain:一个对数据进行相应处理的过滤器链表,对I/O Service和I/O Handler中交互的数据进行转换处理。
I/O Handler:业务逻辑实际处理部分,对交互数据进行处理。 JAVA+SQLSERVER加密聊天软件的设计+源代码(3):http://www.youerw.com/jisuanji/lunwen_32166.html