mina开发文档

mina开发文档

ID:26401978

大小:474.00 KB

页数:26页

时间:2018-11-26

mina开发文档_第1页
mina开发文档_第2页
mina开发文档_第3页
mina开发文档_第4页
mina开发文档_第5页
资源描述:

《mina开发文档》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、使用ApacheMINA2开发网络应用成富,软件工程师,EMC成富任职于IBM中国软件开发中心,目前在Lotus部门从事IBMMashupCenter的开发工作。他毕业于北京大学信息科学技术学院,获得计算机软件与理论专业硕士学位。他的个人网站是http://www.cheng-fu.com。简介: ApacheMINA2是一个开发高性能和高可伸缩性网络应用程序的网络应用框架。它提供了一个抽象的事件驱动的异步API,可以使用TCP/IP、UDP/IP、串口和虚拟机内部的管道等传输方式。ApacheMINA2可以作为开发网络应用

2、程序的一个良好基础。本文将介绍ApacheMINA2的基本概念和API,包括I/O服务、I/O会话、I/O过滤器和I/O处理器。另外还将介绍如何使用状态机。本文包含简单的计算器服务和复杂的联机游戏两个示例应用。发布日期: 2009年12月03日级别: 中级访问情况 2983次浏览平均分(共3个评分)ApacheMINA2是一个开发高性能和高可伸缩性网络应用程序的网络应用框架。它提供了一个抽象的事件驱动的异步API,可以使用TCP/IP、UDP/IP、串口和虚拟机内部的管道等传输方式。ApacheMINA2可以作为开发网络应用

3、程序的一个良好基础。下面将首先简单介绍一下ApacheMINA2。ApacheMINA2介绍ApacheMINA是Apache基金会的一个开源项目,目前最新的版本是2.0.0-RC1。本文中使用的版本是2.0.0-M6。从参考资料中可以找到相关的下载信息。下面首先介绍基于ApacheMINA的网络应用的一般架构。基于ApacheMINA的网络应用的架构基于ApacheMINA开发的网络应用,有着相似的架构。图1中给出了架构的示意图。图1.基于ApacheMINA的网络应用的架构如图1所示,基于ApacheMINA的网络应用有

4、三个层次,分别是I/O服务、I/O过滤器和I/O处理器:·I/O服务:I/O服务用来执行实际的I/O操作。ApacheMINA已经提供了一系列支持不同协议的I/O服务,如TCP/IP、UDP/IP、串口和虚拟机内部的管道等。开发人员也可以实现自己的I/O服务。·I/O过滤器:I/O服务能够传输的是字节流,而上层应用需要的是特定的对象与数据结构。I/O过滤器用来完成这两者之间的转换。I/O过滤器的另外一个重要作用是对输入输出的数据进行处理,满足横切的需求。多个I/O过滤器串联起来,形成I/O过滤器链。·I/O处理器:I/O处理

5、器用来执行具体的业务逻辑。对接收到的消息执行特定的处理。创建一个完整的基于ApacheMINA的网络应用,需要分别构建这三个层次。ApacheMINA已经为I/O服务和I/O过滤器提供了不少的实现,因此这两个层次在大多数情况下可以使用已有的实现。I/O处理器由于是与具体的业务相关的,一般来说都是需要自己来实现的。事件驱动的APIApacheMINA提供的是事件驱动的API。它把与网络相关的各种活动抽象成事件。网络应用只需要对其感兴趣的事件进行处理即可。事件驱动的API使得基于ApacheMINA开发网络应用变得比较简单。应用

6、不需要考虑与底层传输相关的具体细节,而只需要处理抽象的I/O事件。比如在实现一个服务端应用的时候,如果有新的连接进来,I/O服务会产生sessionOpened这样一个事件。如果该应用需要在有连接打开的时候,执行某些特定的操作,只需要在I/O处理器中此事件处理方法sessionOpened中添加相应的代码即可。在介绍ApacheMINA中的基本概念的细节之前,首先通过一个简单的应用来熟悉上面提到的三个层次的具体职责。从简单应用开始在使用ApacheMINA开发复杂的应用之前,首先将介绍一个简单的应用。通过此应用可以熟悉上面提

7、到的三个层次,即I/O服务、I/O过滤器和I/O处理器。该应用是一个简单的计算器服务,客户端发送要计算的表达式给服务器,服务器返回计算结果。比如客户端发送2+2,服务器返回4.0作为结果。在实现此计算器的时候,首先需要考虑的是I/O服务。该计算器使用TCP/IP协议,需要在指定端口监听,接受客户端的连接。ApacheMINA提供了基于JavaNIO的套接字实现,可以直接使用。其次要考虑的是I/O过滤器。I/O过滤器过滤所有的I/O事件和请求,可以用来处理横切的需求,如记录日志、压缩等。最后就是I/O处理器。I/O处理器用来处

8、理业务逻辑。具体到该应用来说,就是在接收到消息之后,把该消息作为一个表达式来执行,并把结果发送回去。I/O处理器需要实现org.apache.mina.core.service.IoHandler接口或者继承自org.apache.mina.core.service.IoHandlerAd

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。