Apache Mina通信框架架构与应用

  • 时间:
  • 浏览:1

对客户端架构的说明,引用官网文档内容,如下所示:

服务器端架构

服务器端监听指定端口上到来的请求,对那些请求经过出理 后,回复响应。它也会创建并出理 一个 链接过来的客户会话对象(Session)。服务器端架构如图所示:

下面看一下使用Mina的应用多多程序 ,在服务器端和客户端的架构细节:

想要开发基于MIna的应用多多程序 ,你只需要做如下事情:

再看一下,Mina提供的基本组件,如图所示:

客户端

实现客户端IoHandler的代码如下所示:

下面看启动客户端的主法律法律依据类,代码如下所示:

对服务器端的说明,引用官网文档,如下所示:

应用整体架构

客户端架构,如图所示:

下面根据里边给出的分派描述,看一下Mina(版本2.0.7)自带的例子,如保实现一个 简单的C/S通信的多多程序 ,非常容易。

服务端 首先,服务器端需要使用的组件有IoAdaptor、IoHandler、IoFilter,其中IoFilter可选.

客户端架构

客户端主要做了如下工作:

Mina发生用户应用多多程序 和底层Java网络API(和in-VM通信)之间,亲们 开发基于Mina的网络应用多多程序 ,就不让关心比较复杂的通信细节。

也就是说,无论是客户端还是服务端,使用Mina框架实现通信的逻辑分层在概念上统一的,即暗含如下三层:

累似 版本中,IoHandlerAdapter实现了IoHandler接口,里边封装了一组用于事件出理 的空法律法律依据,其中暗含服务端和客户端的事件。在实际应用中,客户端上能挑选客户端具有的事件,服务器端挑选服务器端具有的事件,但会 分别对这两累似 件进行出理 (有重叠的事件,如连接事件、关闭事件、异常事件等)。

客户端的IoHandler的具体实现也是累似 的,不越来越来越多累述。

下面看启动服务器的主法律法律依据类,代码如下所示:

亲们 就是发送了四个数字,每发一次间隔30ms。

测试上述服务器端与客户端交互,首先启动服务器端,监听3030端口。

接着启动客户端,连接到服务器端3030端口,但会 发送消息,服务器端接收到消息后,直接将到客户端的连接关闭掉。

应用实例开发