mina 文件服务器,MINA服务器开发文档.pdf

最近一直在看 Mina 的源码,用了 Mina 这么长时间,说实话,现在才开始对 Mina 有了一

些深刻的理解,关于 Mina 的基本知识的介绍,这里就不多说了,网上已经有很多不错的文

章都对 Mina 做了较深刻的剖析,现在就是想从 Mina 的最根本的地方来对 Mina 做一些深

层次上的探讨。

还是先从 Mina 的入口程序来说,每当要启动一个 Mina 的程序(包括服务器和客户端)

时候,这里只是对服务器重点做一些讲解,至于说 Mina 的客户端的应用,这里只是简单的

涉及一点,不会对其做很深入的探讨。但是 Mina 的服务器和客户端在很大的程度上都是一

样,所以这里就 “挂一漏万 ”的简单讲解一下。

在此之前我一直想找一种 “串糖葫芦 ”的方式来讲解一下 Mina ,可是一直没有时间来看

Mina 的源码,真的是无从下手, 虽然网上的很多关于 Mina 的一些文章, 讲解的非常透彻了,

但是可能对于初学者来说,显得有些深奥,在这里特别的提一下洞庭散人对 Mina 源码的透

彻的分析,如果你对 Mina 已经有了一定的了解或者是正在学习 Mina 的源码,建议你去看

看他的博客, 里面有很多东西讲的是相当到位的。 在这里就不在多举例子了。 写这篇文档主

要是想对刚接触 Mina 的人讲解一些 Mina 的基本知识, 由浅入深, 一步一步的学习 Mina 思

想的精髓,我接触 Mina 的时间也比较长了,几乎天天在和它打交道,每当你发现一个新奇

的用法的时候,你真的会被 Mina 所折服,我这里不是对 Mina 的吹捧,记得我曾经和同事

开玩笑说, “等真正的懂得了 Mina ,你就知道什么叫 Java 了 ”,所以,我现在想急切的把现

在所知道和了解的所有关于 Mina 的一些东西都想在这篇文章里面写出来,如果有写的不到

位的地方还请各位同学多多指正,下面就开始对 Mina 做一个完整的介绍。

第一章 Mina 的几个类

先说说 Mina 的几个类和接口

(1) IoService

(2) BaseIoService

(3) BaseIoAcceptor

(4) IoAcceptor

(5) IoConnector

这几个类和接口是整个服务器或客户端程序( IoConnector )的入口程序,其中就 Mina

的整体上来说, IoService 是所有 IO 通信的入口程序,下面的几个接口和类都是继承或者实

现了 IoService 接口。

下面先给出 Mina (入口程序)的整体架构图:

在这里先提出几个个问题:

(1)为什么有了一个 IoService 还要再有一个 BaseIoService?

(2 )BaseIoService 和 IoAcceptor(IoConnector) 有什么区别?

(3)BaseIoAcceptor(BaseIoConnector) 为什么不去直接实现 IoService ,而是又添加了

IoAcceptor(IoConnector)?

带着这几个问题我们来解读一下 Mina 的源码:

首先,解答第一个问题,为什么有了一个 IoService 还要再有一个 BaseIoService ?

IoService 和 BaseIoService 最明显的区别就是 IoService 是一个接口, 而 BaseIoService

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值