由于项目需要,提前预备一些知识。凡是做点准备总是有好处的!!!

MINA框架简介

  • MINA是用于开发高性能和高可用性的网络应用程序的基础框架
  • 通过使用MINA框架可以可以省下处理底层I/O和线程并发等复杂工作,开发人员能够把更多的精力投入到业务设计和开发当中
  • MINA框架的应用比较广泛,应用的开源项目有Apache Directory、AsyncWeb、Apache Qpid、QuickFIX/J、Openfire、SubEthaSTMP、red5等。

MINA框架的特点

  • 基于java NIO类库开发;采用非阻塞方式的异步传输;
  • 事件驱动;支持批量数据传输;支持TCP、UDP协议;串口通讯程序;
  • 控制反转的设计模式(支持Spring);采用优雅的松耦合架构;可灵活的加载过滤器机制;单元测试更容易实现;
  • 可自定义线程的数量,以提高运行于多处理器上的性能;采用回调的方式完成调用,线程的使用更容易。

MINA与NETTY比较

  • 由于Netty的主导作者与Mina的主导作者是同一人,出自同一人之手的Netty在设计理念上与Mina基本上是一致的
  • Mina和Netty都是Java领域高性能和高可伸缩性网络应用程序的网络应用框架,在实际生产应用中都是不错的选择。
  • Netty 是一个吸收了多种协议的实现经验,这些协议包括FTP,SMTP,HTTP,各种二进制,文本协议,并经过相当精心设计的项目

MINA使用简介

  1. 当客户首次访问采用MINA编写的程序时,IoAcceptor作为线程运行,负责接受来自客户的请求。
  2. 当有客户请求连接时,创建一个Session,该Session与IoProcessor、SocketChannel以及IOService联系起来。
  3. IoProcessor也作为另外一个线程运行,定时检查(轮询)客户是否有数据到来,并对客户请求进行处理,依次调用在IOService注册的各个IoFilter,最后调用IoHandler进行最终的逻辑处理,再将处理后的结果Filter后返回给客户端。
文章目录
  1. 1. MINA框架简介
  2. 2. MINA框架的特点
  3. 3. MINA与NETTY比较
  4. 4. MINA使用简介

Sides

IT技术分享博客