IoService接口的主要职责:
监听管理
Io流处理
session管理
过滤链管理
统计信息管理
它的主要实现类是AbstractIoService
IoService是 IoConnector和IoAcceptor的父接口,主要包含以下的方法:
- getTransportMetadata()
- addListener()
- removeListener()
- isDisposing()
- isDisposed()
- dispose()
- getHandler()
- setHandler()
- getManagedSessions()
- getManagedSessionCount()
- getSessionConfig()
- getFilterChainBuilder()
- setFilterChainBuilder()
- getFilterChain()
- isActive()
- getActivationTime()
- broadcast()
- setSessionDataStructureFactory()
- getScheduledWriteBytes()
- getScheduledWriteMessages()
- getStatistics()
IoAcceptor:显然此方法的名字源于socket的accept方法,它的实现类有:
- NioSocketAcceptor : 非阻塞的socket传输Acceptor
- NioDatagramAcceptor : 非阻塞的udp传输Acceptor
- AprSocketAcceptor : 基于apr的阻塞传输Acceptor
- VmPipeSocketAcceptor : 虚拟机内的 Acceptor
IoConnector:显然此方法的名字源于socket的accept方法,它的实现类有:
- NioSocketConnector : 非阻塞的socket传输Connector
- NioDatagramConnector : 非阻塞的udp传输Connector
- AprSocketConnector : 基于apr的阻塞传输Connector
- ...
