如果想通过Mina来实现一个自定义协议的网络应用程序,用户只需要编写自定义协议编解码处理器和业务处理逻辑即可。由于每一个Session关联一个Processor处理线程,多个Session共享有限的Processor线程池,如果Handler中的业务逻辑处理比较耗时,会导致后续请求阻塞等待,严重降低效率,所以,一般会向Acceptor的FilterChain添加一个ExecutorFilter来缓解该问题,典型代码如下:
DefaultIoFilterChainBuilder chain = acceptor.getFilterChain(); // 日志 LoggingFilter filter = new LoggingFilter(); chain.addLast("logger", filter); // 协议处理 chain.addLast("codec", new ProtocolCodecFilter(codecFactory)); // 线程池 chain.addLast("executor", new ExecutorFilter(Executors.newCachedThreadPool()));
当server接收到client发送数据后的处理流程如下:
呵呵,用jude画的序列图,不是很规范。备忘。
相关推荐
mina-core-2.0.0-M6.jar mina-example-2.0.0-M6.jar mina-filter-codec-netty-2.0.0-M6.jar mina-filter-compression-2.0.0-M6.jar mina-integration-beans-2.0.0-M6.jar mina-integration-jmx-2.0.0-M6.jar mina-...
mina-core-2.0.0-RC1.jar,mina-filter-compression-2.0.0-RC1.jar,mina-transport-apr-2.0.0-RC1.jar
NULL 博文链接:https://sziitjiang.iteye.com/blog/1646625
mina-filter-compression-2.0.7.jar,mina 过滤器jar包,核心包之一
mina-core-2.0.0-RC1-sources.jar
mina-core-2.0.0-M1.jar/mina-example-1.0.5.jar/slf4j-jdk14-1.6.1.jar/slf4j-log4j12-1.6.1.jar mina 所用jar
mina-2.0.0-M6.zip源码+例子,学些mina必备哦
mina-integration-ognl-2.0.0-M4.jar mina-integration-ognl-2.0.0-M4.jar
mina-integration-beans-2.0.0-M4.jar mina-integration-beans-2.0.0-M4.jar
Mina源码解析 ,有兴趣的下载看一下,很不错的。
mina-core-2.0.0-M1-sources.jar是构建mina框架的主要文件
mina-transport-apr-2.0.2.jar
Mina 2.0快速入门与源码解析 很适合初学者使用!!!
mina-core-2.0.0-M1.jar包和slf4j相关jar包
mina-core-2.0.0-M6.jar
mina源码
mina-filter-compression-2.0.2.jar
mina-integration-beans-2.0.2.jar
mina-integration-jmx-2.0.2.jar
mina-integration-xbean-2.0.2.jar