一、介绍
Apache mina是一个帮助用户方便开发高性能和高扩展性的网络应用框架。它在java NIO基础上提供了一组抽象的事件驱动的异步API,比如TCP/IP 和 UDP/IP。
官网地址:
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+
相关推荐
Apache Mina Server 2.0中文参考手册V1.0,Apache Mina2.0学习笔记(修订版)Apache Mina Server 2.0中文参考手册V1.0,Apache Mina2.0学习笔记(修订版)
在本学习笔记中,我们将专注于MINA的子项目——FtpServer,它是实现FTP服务器功能的一个模块。 FTP(File Transfer Protocol)是一种广泛使用的互联网协议,用于在不同主机之间传输文件。Apache MINA FtpServer提供...
在这个"Apache MINA2学习笔记DEMO"中,我们很可能会看到如何使用MINA来创建一个自定义协议的示例。自定义协议通常是为了满足特定应用的需求,例如高效的数据传输、安全性或者特定的编码格式。MINA允许开发者定义自己...
下面将详细介绍Mina的基本概念、核心接口以及如何入门。 **一、Mina入门** 1. **下载使用的Jar包**: 要使用Mina,首先需要下载其发布的jar包,这些包通常包含了Mina的核心库和其他依赖库。你可以从Apache官方...
最近使用Mina开发一个Java的NIO服务端程序,因此也特意学习了Apache的这个Mina框架。 引言 1 一. Mina入门 2 第一步.下载使用的Jar包 2 第二步.工程创建配置 2 第三步.服务端程序 3 第四步.客户端程序 6 第五步.长...
1. **下载使用的Jar包**:在开始Mina2.0的学习之前,你需要从Apache官网或其他可靠的源下载Mina的最新版本库。通常,这包括核心库和其他依赖库,如slf4j用于日志记录。 2. **工程创建配置**:创建一个新的Java项目...
Apache Mina是一个高性能、事件驱动的网络应用框架,主要用于简化开发服务器端的复杂性,尤其在处理TCP/IP、UDP和SSL/TLS等协议时。它提供了丰富的API和工具,使得开发者能够快速构建网络应用程序,如FTP、SMTP、...
在MINA的学习笔记中,记录的所有API通常会包括以下几个核心部分: 1. **IoSession**: 这是MINA的核心接口,代表了客户端和服务器之间的连接。IoSession提供了读写数据、管理连接状态、获取会话属性等功能。例如,`...
Apache Mina是一个强大的开源网络应用框架,主要设计用于构建高性能、高可扩展性的网络应用程序。Mina通过提供一个抽象的、事件驱动的异步API,简化了基于Java NIO(Non-blocking Input/Output)的复杂编程,使得...
Apache Mina是一个强大的开源框架,专门用于构建高性能、高可扩展性的网络应用程序。Mina2.0是其一个重要的版本,提供了许多改进和新特性,使得开发者能够更轻松地处理网络通信任务,尤其是在Java NIO(Non-blocking...
在本学习笔记中,我们将深入探讨Mina的基本概念和使用方法。 ### 一、Mina 框架概述 1. **设计原则**:Mina 的设计基于事件驱动和异步I/O模型,这使得它能处理大量并发连接,而不会导致线程阻塞。它使用了Java NIO...
《mina学习笔记》 Apache MINA(Multipurpose Infrastructure for Network Applications)是一个开源框架,主要设计用于简化网络应用程序的开发,尤其是TCP和UDP协议的应用。MINA 提供了一种与网络协议无关的API,...
通过学习和理解Mina的基本概念和使用方法,我们可以构建高效、稳定、可扩展的网络应用。无论是简单的数据传输还是复杂的协议处理,Mina都能提供强有力的支持。在实际项目中,可以根据需求选择合适的连接模式,利用...
### Mina初步学习笔记知识点概览 #### 一、Mina简介及下载配置流程 **Mina**,全称**Multipurpose Infrastructure Networked Applications**,是Apache基金会开发的一个高性能网络应用框架,旨在帮助开发者构建高...
MINA-2.0.0-M4.chm(英文)中文的实在是没有)+Mina2.0学习笔记(修订版).doc+Apache_Mina_Server_2.0中文参考手册V1.0.pdf+MINA框架新人指南.pdf