注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

0与1构筑世界,程序员创造时代

软件架构设计 Java编程

 
 
 

日志

 
 

Mina - 架构概述  

2008-12-24 18:21:31|  分类: 软件架构与设计 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
  文章声明


作者:傲风(aofengblog@163.com)       编写时间:2008年12月24日

网址:http://aofengblog.blog.163.com


1、外部结构。

在我们处理网络通信(Network I/O)的程序中使用Mina,其所处位置如下图所示:
Mina - 架构概述 - 傲风 -
我们自己写的代码负责处理业务逻辑,Mina帮我们处理通信。

2、内部结构。

Mina - 架构概述 - 傲风 -

简单地来讲,就分为三层:
  • I/O Service。负责处理I/O。
  • I/O Filter Chain。负责编码处理,字节到数据结构或数据结构到字节的转换等,即非业务逻辑的操作。
  • I/O Handle。负责处理业务逻辑。

示例代码

    // I/O Service
    IoAcceptor acceptor = 
new NioSocketAcceptor();
    acceptor.getSessionConfig().setReadBufferSize(2048);
    acceptor.getSessionConfig().setIdleTime(IdleStatus.BOTH_IDLE, 10);
   
    // I/O Filter Chain
    acceptor.getFilterChain
().addLast("logger"new LoggingFilter());
    acceptor.getFilterChain().addLast("codec"new ProtocolCodecFilter(
        new TextLineCodecFactory(Charset.forName("UTF-8"))));
   
    // I/O Handle

    acceptor.setHandler(new TimeHandle());
    
    int port = 8080;
    try {
      acceptor.bind(new InetSocketAddress(port));
    catch (IOException e) {
      logger.fatal("Can't start the IoAcceptor.", e);
    }


<正文结束>
  评论这张
 
阅读(2228)| 评论(2)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017