Apache Mina使用手记(一)

Apache mina使用入门 Apache mina是一个基于NIO(非阻塞IO)模型的网络应用框架。详细资料和下载地址为:http://mina.apache.org/ 远程客户端通过IoService建立连接得到session,session将数据传送到IoFilterChain进行过滤,最后客户端在IoHandle中进行数据操作,其工作原理如图所示: 此处记录的是Android中Apache mina于服务器建立的... 阅读详情

1.Apache Mina是一个高性能的基础网络构架平台,构建在java NIO的基础上

2.Mina使用了SLF4J做为日志记录器,全称Simple Logging Facade for Java,它是一个日志门面,只负责为客户端提供应用接口,实际的日志记录由Log4j/JUL等日志记录器实现。如下图所示:

 

3.Mina主要有IoConnector,IoAccepter,IoSession,IoSessionConfig,IoHandler,IoFilter,IoFuture,EventListener等对象组成

4.IoConnector实现客户端的连接功能,IoAccepter实现服务端的接收功能,它们都继承自IoService

5.IoSession为客户端和服务端的一个会话,每一个会话都包括会话的建立,打开,注销等功能

6.IoSession中还包括发送或接收到的数据,以及会话上触发相应事件的侦听器

7.而IoSession的相关配置由IoSessionConfig实现

8.IoHandler为数据处理器,在此对象中可以对接收到的数据进行具体的业务处理,也可以决定发送数据成功后是否进行其他的操作。很类似VB当中的事件处理。

9.IoFilter决定着在IoAccepter接收到原始数据之后,IoHandler进行业务处理之前,或反过来的对数据的中间处理过程

10.第一个IoFilter可以实现一个子功能,比如LoggingFilter可以实现对接收或发送数据的进行日志处理,其中LoggingFilter根据加载的具体类库动态判断具体的日志操作

11.在IoFilter中,也可以进行协议或编码解码处理,可以支持byte/txt/http/ftp/xml等各种方法

12.在实际的实现 中,多个过滤器由IoFilterChain进行管理,类似一个管道,原始数据从管道的一端进入,过滤层层过滤处理,最终得到需要的数据,交给IoHandler进行业务处理

13.IoFuture指定IO操作包括connect/read/write等的未来状态

14.EventListener事件侦听器,一般会加载到IoSession上面,进行事件监听。比如对接收数据的事件触发后,会在侦听器中调用IoHandler的MessageReceived()方法来处理。

1 linux网络诊断命令工具_linux诊断网络故障命令(1) 12、DNS和NS查找工具14、Batfish15、Fiddler17、nload实时监控网络带宽CPU 方面内存IO 设备(磁盘、网络)网络工具mtr更多介绍 : https://mp.weixin.qq.com/s/-lru6FAhkXTo7gLCCfWlyg。 阅读详情

相关推荐

Apache Mina 2.0.4:网络应用开发的新选择

本文还有配套的精品资源,点击获取 简介:Apache Mina 2.0.4是一个异步、高性能的网络应用程序框架,用于简化TCP/IP和UDP协议应用的开发。它通过非阻塞I/O模型和多种协议支持,提高系统性能,并具有模块化设计。该版本增加了稳定性和新功能,适用于开发Java网络应用。 1. Mina框架概述与设计理念 1.1 Mina框架的简介 Apac...

weixin_42560991的博客 1574

十年大数据架构师,带大家深入Apache Mina通信框架架构与应用

Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于 TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供 JAVA 对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供了事件驱动、异步(Mina 的异步 IO 默认使用的是 JAVA NIO 作为底层支持)操作的编程模型。下面根据上面给出的架构设计描述,看一下Mina(版本2.0.7)自带的例子,如何实现一个简单的C/S通信的程序,非常容易。

2401_83384536的博客 1527

apache mina 开源的网络通信框架

Mina 2.0.16 简介 代码实例 Mina 是Apache开发的一个开源的网络通信框架,基于java NIO实现。 建立server与client之间的会话连接,对会话消息进行过滤; 非阻塞消息会话机制; 通过自定义的通信协议进行编解码消息。

Apache Mina的用法

ApacheMINA是“Multipurpose Infrastructure for Network Applications”的简写,它是用于开发高性能和高可扩展性的网络应用程序的基础框架。该框架有如下优点: 1、使用该框架来开发的网络应用程序代码结构清晰明了; 2、该框架完成了底层的线程管理,省去了处理底层I/O和线程并发等复杂工作; 3、该框架内

gaohuanjie的专栏 3688

山石网科Hillstone防火墙基础上网配置_CLI命令行(最新版)

山石网科Hillstone防火墙安全网关基础上网基础网络配置_CLI命令行(最新版)

路与肥的博客 1万+

实战演练 | ABAQUS显式动力学分析在金属切削仿真中的应用

本文详细介绍了如何利用ABAQUS显式动力学分析进行金属切削过程的二维仿真。通过从零开始的完整流程,包括几何建模、材料本构与失效定义、网格划分、接触设置、边界条件施加,到结果后处理与切削力提取,为工程师和研究人员提供了实用的仿真方法,以优化刀具设计和加工工艺。

purple的博客 930

Apache Mina使用手记(四)

上一篇中,我们介绍了如何在mina中编写自己的日志过滤器,这一篇我们自己实现一个编解器。实际应用当,很多应用系统应用的都不是标准的web service或XML等,比如象中国移动/联通/电信的短信网关程序,都有自己不同的协议实现,并且都是基于TCP/IP的字节流。Mina自带的编解码器实现了TextLineEncoder和TextLineDecoder,可以进行按行的字符串处理,对于象短信网关

张新波的技术随笔 2万+

基于QT的华为网络摄像头二次开发

第一次使用华为的网络摄像头并进行二次开发,网上关于QT对华为网络摄像头的二次开发的文章很少,基于项目的需求做了一些工作,特此记录。 目标: 1、实时预览 2、手动控制录制视频 3、监听告警型号 4、实时获取元数据中的划定区域内的人数 摄像头型号如下: 准备工作: 在购买摄像头后,应当在官网下载对应的开发资料,如果需要权限,则联系华为的技术支持人员。下载资料如下: SDC Development Kit Demo 8.0.T9 SDK DEMO下载地址:https://bbs.hua

xumingyifrend的博客 3168

mina 使用手记 4

  Apache Mina使用手记(四) 收藏 document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text

DocSun的专栏 2594

别再手动拷贝文件了!用Keil MDK的Pack Installer一键搞定STM32上的RT-Thread Nano移植

本文详细介绍了如何使用Keil MDK的Pack Installer一键快速移植RT-Thread Nano到STM32项目,告别繁琐的手动拷贝和配置过程。通过自动化版本管理和依赖处理,移植时间从47分钟缩短至3分钟,大幅提升开发效率。文章还提供了实战步骤、高级配置技巧和常见问题解决方案,帮助开发者轻松实现RTOS集成。

weixin_29194817的博客 363

Windows11安装配置openclaw+deepseek(大龙虾)

密码可以随便设置(注意wsl系统本质上是linux系统,设置密码系统是不会像windows一样显示*点位符的),输入密码后敲回车再次输入密码,输入后敲回车。如果不小心关闭这个界面,可以再次进入powershell,输入wsl进行系统。在powershell中输入:curl -fssL https://openclaw.ai/install.sh | bash。下面是否通过第3方平台和openclaw交互,我选择j最后一项:skip for now。到下面这一步,可以通过键盘的左箭头选择Yes.

mahailiang的专栏 343

Apache Mina使用手记(三)

在上一篇中,通过一个简单的例子,得以管中窥豹,了解了Mina的基本编写方法。在MinaTimeServer演示程序中,我们添加了两个过滤器,一个是日志过滤器LoggingFilter,一个是文本编解码过滤器。前者实现日志信息的自动处理,后者实现对按行读写的文本数据的编码和解码。其中LoggingFilter默认的是slf4j,它是一个日志Facade,实际并不实现真正的日志处理功能,它在程序运

张新波的技术随笔 1万+

CUDA&PCL 点云体素下采样

CUDA&PCL 点云体素下采样

dayuhaitang1的博客 1268

Apache MINA FTPServer 教程

Apache MINA FTPServer 教程 1. 项目介绍 Apache MINA FTPServer 是一个基于 Apache MINA 库的完全可配置的 FTP 服务器实现。它允许开发人员轻松地创建自己的 FTP 服务,支持主动和被动模式的数据传输,以及 SSL/TLS 加密。该项目是 Apache 软件基金会的一个顶级项目,具有高度的稳定性和活跃的社区支持。 2. 项目快速启动 环境准...

gitblog_00048的博客 881

13. MIC配置

恒玄BES2700,支持3个MIC。

雪飞_海 924

基于机器学习的网络入侵检测系统设计与实现

本文设计并实现了一个基于机器学习的网络入侵检测系统,采用随机森林模型结合KMM算法优化,使用CICIDS2017数据集进行训练。系统包含完整的数据预处理流程、特征工程、模型调优和远程部署方案。实验结果表明,该系统能有效识别多种网络攻击类型,在检测准确率和误报率方面表现优异。研究为网络安全防护提供了新的技术思路和实用工具,具有重要的应用价值。

huanghm88的专栏 318

Apache Mina

初步接触RPC通信框架,目前有很多优秀的RPC框架,今天我参考该博文:http://www.cnblogs.com/xuekyo/archive/2013/03/06/2945826.html 学习了Aapche Mina通信框架。博主介绍的非常详细,包括Mina的源码流程,这里通过阅读博主的文章进行了学习记录,方便以后需要时使用。 Apache Mina 是一个网络应用程序框架,用来帮助用户简

JY_He的博客 3437

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

apache MINA简介

前面对 java NIO 有了较深入的了解,对 NIO的特性也有了理解,今天有空 初步了解些 apache MINA框架,按照官方的说法。 Apache MINA(Multipurpose Infrastructure for Network Applications) 是一个网络应用框架,有助于用户非常方便地开发高性能、高伸缩性的网络应用。它通过Java NIO提供了一个抽象的、事件驱动的、异

我的山水 1859

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Apache MINA NIO模型

From: http://2006zhouxinfeng.blog.163.com/blog/static/5024021620115155106736/   前一段在网上看到了“淘宝伯岩”(boyan@taobao.com)的一份关于Java NIO 网络编程的讲义《N

Daniel Ding 的专栏 1860

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Apache Mina使用手记(二)

 Mina主要是作为服务器端底层框架来实现数据处理,它的实现很简单,如下例所示:package com.gftech.mytool.mina;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.charset.Charset;import java.util.Date;im

张新波的技术随笔 1万+

Apache Mina实例

Apache MINA(Multipurpose Infrastructure for Network Applications) 官网http://mina.apache.org/ 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架。当前发行的 MINA 版本支持基于 Java NIO 技术的 TCP/UDP 应用程序开发、串口通讯程序(只在最

小李专栏 2885

Apache MINA 2.0 用户指南

本指南根据官方最新指南翻译,请随时关注官方更新:http://mina.apache.org/mina-project/userguide/user-guide-toc.html。

Defonds 的专栏 7933

java开发——Apache Mina的使用

Apache Mina是一个NIO库,实现非阻塞式通讯。它通过Java nio技术基于TCP/IP和UDP/IP协议提供了抽象的、事件驱动的、异步的API。 使用步骤: 1、配置Maven 2、配置spring 3、实现编码工厂ProtocolCodecFactory  4、继承编码器适配器ProtocolEncoderAdapter  5、实现解码器ProtocolDecoder  ...

river66的博客 3258

Apache MINA SSHD

Apache MINA SSHD(Secure Shell Daemon)是基于Apache MINA(Multipurpose Infrastructure for Network Applications)开发的一个开源的Java库,专门用于提供SSH(Secure Shell)服务。

m0_37559973的博客 2437
上一篇: 在Netbeans中设置JVM参数
下一篇: Apache Mina使用手记(二)
sinboy
博客等级 码龄25年 239粉丝 65原创
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值