Nio Mina框架

来源:互联网 发布:淘宝卖家怎么看差评 编辑:程序博客网 时间:2024/04/29 17:53

转自:http://blog.csdn.net/yoara/article/details/37324821

mina组件结构图:

  • IoService,负责处理I/O,直接子接口: IoAcceptor,IoConnector
  • Filter chain,顺序执行过滤器,编码等
  • IoHandler, 负责服务端处理业务逻辑

IoAcceptor:服务端   IoConnector:客户端

服务端结构:

  • IOAcceptor 监听来自网络的请求。
  • 当新的连接建立时,一个新的session会被创建,该session用作对同一IP/端口组合的客户端提供服务。
  • 数据包需经过一系列的过滤器,这些过滤器可用来修改数据包的内容(如转换对象、添加或修改信息等),其中将原始字节流转换成POJO对象是非常有用的。当然这需要解编码器提供支持。
  • 最后这些数据包或转化后的对象将交由IOHandler处理,我们将实现IOHandler用于处理具体的业务逻辑。


作用:

开启监听端口,等待请求的到来、处理他们、以及将发送对请求的响应。同时,服务端会为每个连接创建session,在session周期内提供各种精度的服务,比如连接创建时(sessionCreated(IoSession session))、连接等待时(sessionIdle(IoSession session, IdleStatus status))、

(sessionClosed(IoSession session))等。mina的API为TCP/UDP提供的一致性Server端操作。


客户端结构:

  • 客户端首先需要创建IOConnector对象,绑定服务端的IP和端口。
  • 一旦连接成功,一个于本次连接绑定的session对象将被创建。
  • 客户端发送给服务端的请求都需要经过一系列的fliter。
  • 同样,响应消息的接受也会经过一系列的filter再到IOHandler被处理。
作用:

发出请求,等待请求响应;




0 0
原创粉丝点击