apache mina 学习笔记一(基本介绍)

一、介绍

Apache mina是一个帮助用户方便开发高性能和高扩展性的网络应用框架。它在java NIO基础上提供了一组抽象的事件驱动的异步API,比如TCP/IP 和 UDP/IP。

 官网地址:

http://mina.apache.org/

 

apache MINA有如下身份

1. NIO 框架库

2. 客户端服务端框架库

3. 一个网络套接字库

 

子项目

Asyncweb : 一个基于MINA异步消息的HTTP服务。

FtpServer : 一个FTP服务

SSHd : 支持SSHH 协议的java库

Vysper : 一个XMPP 服务

 

二、特性

1. 不同的传输类型统一的API

    1.1 TCP/IP 和 UDP/IP 基于java NIO

    1.2  串行的通信(RS 232) 基于RXTX

    1.3 在虚拟机的管道通信

    1.4 自定义的传输类型

2. 过滤接口作为扩展的点,类似Servlet的Filter

3. 低级别和高级别的API

    3.1 低级别的使用ByteBuffers

    3.2 使用用户定义的消息对象和编码

4.高度可定制的线程模型

    4.1 单线程

    4.2 线程池

    4.3 多个线程池

5. SSL TLS  启动TLS 使用java5的 SSLEngine

6. 高负载屏蔽和通信限制

7. 可用mock object 进行单元测试

8. 可通过JMX管理

9. 支持基于流的输入输出 通过(StreamIoHandler)

10. 集成著名的容器如(picoContainer 和Spring)

11. 平滑的从netty迁移 , netty是nima的前身

 

三、版本

截止目前为止,Mina稳定的版本是(2.0.7),所以之后有关Mina的博客都是基于这个版本的

 

四、预备条件

1.MINA 2.0.7

2.JDK1.5+

3.log4J 1.2+

猜你喜欢

转载自tangmingjie2009.iteye.com/blog/2032879