• Apache MINA 框架之IoService介绍


    IoService为NIMA提供基本的I/O服务和I/O Session管理。它是NIMA框架最重要的组成部分。实现IoService接口或它的子接口能对底层的I/O进行操作处理。
     
    IoService的思维导图:

     

    Responsabilities:

    sessions management :创建和删除sessions

    filter chain management :管理过滤链,并允许用户改变

    handler invocation :当收到新消息时促发处理

    statistics management : 更新发送的消息数量,字节发送,等等....

    listeners management : 监听管理

    communication management : 处理的数据传输

    IoService接口基于管理I/O的,所以有关于I/O的所有功能操作;

    接口具体细节,各方法的接口:

    • getTransportMetadata()
    • addListener()
    • removeListener()
    • isDisposing()
    • isDisposed()
    • dispose()
    • getHandler()
    • setHandler()
    • getManagedSessions()
    • getManagedSessionCount()
    • getSessionConfig()
    • getFilterChainBuilder()
    • setFilterChainBuilder()
    • getFilterChain()
    • isActive()
    • getActivationTime()
    • broadcast()
    • setSessionDataStructureFactory()
    • getScheduledWriteBytes()
    • getScheduledWriteMessages()
    • getStatistics()

    具体方法的功能可查API文档

    IoService两个最重要的实现子类:

    • IoAcceptor
    • IoConnector

    IoAcceptor 负责建立服务端与客服端之间的连接。一定程度上,我们可以称作它是服务端。

    IoAcceptor的实现类:

    • NioSocketAcceptor : 非阻塞socket传输
    • NioDatagramAcceptor : 非阻塞的UDPSocket传输
    • AprSocketAcceptor : 基于APR的阻塞的Socket传输
    • VmPipeSocketAcceptor : in-VM 传输

    IoAcceptor类图:

    IoConnector

    IoConnector实现类:

    • NioSocketConnector : 非阻塞的Socket连接
    • NioDatagramConnector : 非阻塞的UDP Socket连接
    • AprSocketConnector : 基于APR的阻塞连接
    • ProxyConnector : 连接的动态代理
    • SerialConnector : 串口连接
    • VmPipeConnector : in-VM 连接

    IoConnector类图:

  • 相关阅读:
    用SecureCRT来上传和下载文件
    Linux指令--tar,gzip
    Linux指令--文件和目录属性
    Linux指令--which,whereis,locate,find
    Linux指令--head,tail
    Linux指令--more,less
    Linux指令--nl
    Linux指令--cat,tac
    Linux指令--touch
    Linux指令--cp
  • 原文地址:https://www.cnblogs.com/quyongjin/p/3128348.html
Copyright © 2020-2023  润新知