Apache MINA 框架详解

来源:互联网 发布:手机淘宝怎么与优惠券 编辑:程序博客网 时间:2024/04/30 11:13

MINA 总体视图:

从以上图我们可以看出:NIMA基于你的应用(客户端或服务端)与底层网络之间,它可以基于TCP,UDP,或VM或甚至一个RS-232C 串口行协议的客户端。

NIMA每个组成部分的作用:

 

 

工作流程:

 

总体来说,NIMA框架分为三层:

1、I/O Service ——执行I/O操作

2、I/O Filter Chain——过滤链

3、I/O Handler——业务逻辑处理

所以要创建一个基于NIMA框架的应用程序,你必须:

  1. Create an I/O service - 创建一个已经(*Acceptor)服务
  2. Create a Filter Chain - 创建一系列的Filters并加入到过滤链
  3. Create an I/O Handler - 实现自己的业务逻辑

 

服务端框架图:

服务端主要逻辑思路:

  • IOAcceptor 监听网络数据包传入的连接;
  • 为每个新的连接创建一个session,同一个端口—+ip的后续请求将通过session进行处理;
  • 同一个session收到的所有数据,通过过滤链进行过滤.通过PacketEncoder/Decoder进行有效的编码,解码处理;
  • 最后根据自己的业务需求完成Handler的业务逻辑处理.

 

客户端框架图:

 

 

客户端主要逻辑思路:

  • 客户端首先创建一个IOConnector , 连接一个server;
  • 连接之后,一个session被创建关联相关的连接;
  • 应用程序通过session向服务端发送数据,数据经过一系列的过滤链之后发送给服务端;
  • 所有的收到的信息需通过过滤链之后达到IOHandler进行业务逻辑处理;