MINA之简单介绍

来源:互联网 发布:淘宝高仿鞋店铺名字 编辑:程序博客网 时间:2024/06/09 16:01

MINA(高性能Java网络框架)学习

1、官网:http://mina.apache.org/

2、介绍:

Apache Mina(Multipurpose Infrastructure for Network Applications)是一个网络应用程序框架,帮助用户快速简单开发高并发及高可用性的网络应用程序。

              它基于java NIO ,并在不同的传输协议诸如TCP/IP UDP/IP之上,提供一个抽象的、由事件来驱动的异步API。

3、别称:NIO框架库、客户服务端框架库、网络Socket库。

       4、相关子项目:

              Asyncweb:基于MINA异步框架顶端的HTTP server

              FtpServer:一个FTP server

              SSHd:一个支持SSHH协议的java库

              Vysper:一个XMPP Server

       5、下载链接:http://apache.dataguru.cn/mina/mina/2.0.7/dist/apache-mina-2.0.7-bin.zip

                            http://mirrors.cnnic.cn/apache/mina/mina/2.0.7/dist/apache-mina-2.0.7-bin.zip

      

NIO与BIO

       1、NIO在java 1.4中被引入,从此被用于高并发的应用程序,因为NIO APIs能够使IO操作无阻塞。

       2、MINA基于NIO 1,对于JDK1.7中的NIO 2 新增特性并没做改进。

       3、NIO中N指的是New,但通常我们用Non-Blocking代替。NIO 2是 new new I/O或者more newer IO

       4、NIO包括以下关键部分:

              Buffers、Chartsets、Channels、Selectors、Regexps、

       5、NIO与BIO的区别:

          BIO为阻塞的IO操作API, 及Blocking IO,它以一种阻塞的模式,依赖于普通的Socket套接字来实现IO操作。对一个套接字,不论读取或者写或者其他任何操作,被调用操作将一直阻塞调用者,一直等到操作结束。

          NIO则可以实现调用IO操作之后,同时去做其他事情,当操作结束后通知调用者。这样当有大量已连接的socket时,不必为每一个连接创建特定的线程,我们可以仅仅使用几个线程来完成这样工作。

 

原创粉丝点击