mina 使用手记 1

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

mina-1.1.7.zip:Apache MINA框架详解与实践

本文还有配套的精品资源,点击获取 简介:Apache MINA是一个高性能、跨平台的Java开源网络应用程序开发框架,旨在简化网络编程,特别是TCP/IP和UDP/IP协议的应用开发。mina-1.1.7.zip包含了MINA的源码和文档资源,是学习和使用MINA的重要资料库。本资源详细解析了MINA的核心特性,如异步I/O模型、API设计、过滤器、Session管理、事件...

weixin_29859471的博客 1172

Apache Mina的用法

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

gaohuanjie的专栏 3688

HDMI协议介绍(二)--DataIsland Packets

前文简单介绍了HDMI传输的三个周期:控制周期、DataIsland周期和Video周期。DataIsland传输音频和辅助数据,这些数据以Packet的形式传输。本文简单介绍DataIsland Packet。

SlamDunk的博客 5671

西南交通大学车辆工程专业大四上车辆综合实训ame仿真部分

西南交通大学车辆工程专业大四上车辆综合实训ame仿真建模部分

qq_64814052的博客 1244

mina 使用手记 4

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

DocSun的专栏 2594

实验三 Gmapping建图

自主移动机器人第三次实验课,内容包括:(1)turtlebot的gmapping建图;(2)rosbag的使用;(3)gazebo中的gmapping建图。

lj164567487的博客 4648

Apache Mina使用手记(四)

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

张新波的技术随笔 2万+

国内9大Coding Plan平台实测:CI/CD延迟与开发者体验横评

代码托管平台不仅是Git仓库,更是现代研发流程的‘生产力基建’核心。其底层能力涵盖Git协议优化、CI/CD调度实时性、制品库并发吞吐及RBAC权限收敛效率等关键维度。尤其在团队规模扩张、日均提交激增、多环境高频部署场景下,Webhook延迟、CI排队耗时、制品上传卡顿等应用层性能指标,远比网络层ping值更能决定开发效能。本文基于真实微服务项目(32模块、8.7万行/仓)与三类极端负载(长尾构建、热区冲突、制品洪峰),对国内9个满足Coding Plan标准的平台开展端到端压测,聚焦CI/CD延迟与开发者

weixin_29281941的博客 367

如何在 Mac 上下载安装 Xcode——并为 iOS 开发更新它原文

下载 Xcode安装命令行工具打开新版本删除文件注意,我在下面的步骤中列出了一些终端命令。这些命令可以被输入到你现在的工作目录中。这意味着你不需要导航到任何特定的文件夹。如果你真的想这样做,你可以在输入下面的步骤中的命令之前先输入== cd==。这将使你返回到主文件夹。

专注于AI领域前沿知识,业余爱好开发软件 4666

Mina2 与 Mina1变化

一、Mina2 与 Mina1变化。 因为MINA ByteBuffer 与JDK中NIO ByteBuffer 同名,ByteBuffer 被重命名为 IoBuffer。不仅使类名简化,也使类名称更加明确。放弃 Buffer 池,默认使用IoBuffer.allocate(int) 来分配 heap buffer。acquire() 与 release() 两个方法将不再容易发生错误,可以调用 free()方法。在大多数JVM中,框架内置的IoBuffer 性能更加强劲稳定。

fanyun7654的专栏 2016

在PPT里如何做出晶莹剔透的高级水泡感出来呢

水晶汽泡被大量使用在TED场景的演讲片稿中,给人以强烈的视觉冲击感。其实实现很简单。本篇就用三步教会大家如何制作这样的一种PPT效果。

打造全国最全的AI Agent开发知识领域的博客 1536

Apache Mina使用手记(一)

1.Apache Mina是一个高性能的基础网络构架平台,构建在java NIO的基础上2.Mina使用了SLF4J做为日志记录器,全称Simple Logging Facade for Java,它是一个日志门面,只负责为客户端提供应用接口,实际的日志记录由Log4j/JUL等日志记录器实现。如下图所示: 3.Mina主要有IoConnector,IoAccepter,IoSes

张新波的技术随笔 1万+

matlab 计算点云粗糙度

A Correspondence Framework for ALS Strip Adjustments based on Variants of the ICP Algorithm

点云侠的博客 1828

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

MINA框架概述

1.MINA框架简介MINA(Multipurpose Infrastructure for Network Applications)是用于开发高性能和高可用性的网络应用程序的基础框架。通过使用MINA框架可以可以省下处理底层I/O和线程并发等复杂工作,开发人员能够把更多的精力投入到业务设计和开发当中。MINA框架的应用比较广泛,应用的开源项目有Apache Directory、AsyncWeb

BraveHeart专栏 3999

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Mina入门

自定义一个Mina的客户端,然后向上一节的Mina服务端发送数据。Mina客户端类:MinaClient.java/*** Mina客户端* * 用例:实现MinaServer的telnet程序**//*** IO会话连接器*//*** IO连接会话*//*** 与Mina服务端建立连接** @return 连接结果*/try {//1-NioSocketAcceptor( IO连接器)//2-设置超时时间。......

应无所住而生其心 1099

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Apache Mina

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

JY_He的博客 3437

MINA框架

基于MINA框架快速开发网络应用程序 1.MINA框架简介 MINA(Multipurpose Infrastructure for NetworkApplications)是用于开发高性能和高可用性的网络应用程序的基础框架。通过使用MINA框架可以可以省下处理底层I/O和线程并发等复杂工作,开发人员能够把更多的精力投入到业务设计和开发当中。MINA框架的应用比较广泛,应用

小毅的书屋 2757

Mina

1)MINA概念 一个简易用的基于TCP/IP通信的java框架 2)一个简单的网络程序需要的最少jar包 3)开发一个Mina应用过程 创建连接,设定过滤规则,编写自己的消息处理器 4)MINA实例 package com.vince...

zs1342084776的博客 658

MINA2.0用户手册中文版--第一章 MINA2.0入门

(补充:由于该手册官方也在不断完善中,因此会有变化,最近一次更新时间为2012-11-12,强烈建议看原文) 1. NIO概述         NIO是Java New IO的简称,在JDK1.4版本中引入该API,从那时起,就被广泛的应用。通过使用她,可以通过非阻塞的方式进行IO操作。 Java.nio.*包含了如下核心结构: Buffers - 用于基本类型数据的容器Cha

1万+

java mina spring_Mina: SpringBoot 集成 MINA 项目

MINA一、概述​Apache MINA是一个网络通信应用框架,可帮助用户轻松开发高性能和高可扩展性的网络应用程序。 它通过Java NIO在各种传输(如TCP / IP和UDP / IP)上提供抽象的,事件驱动的异步API。MINA 不仅处理TCP和UDP,还通过VmpPipe或APR 在串行通信(RSC232)之上提供一层,现有支持的协议MINA附带了各种实现的协议:HTTP,XML,TCP,...

weixin_34315803的博客 605

关闭mina服务_如何彻底关闭MINA客户端 转

在使用MINA做客户端程序时,发现虽然调用了session.close()方法,通过日志也确实看到当前session已经被关闭了,但未什么客户端程序进程却没有停止呢?即MINA客户端没有根本的关闭。这个现象在版本1和2中都存在。这是MINA的bug吗???其实不然...我们可以启动2个服务器端,然后用同一个connector实例来连接这2台服务器,通过结果可以发现2个连接是相互独立工作的,及con...

weixin_39939601的博客 196

Mina总结

Mina MINA(IO和处理逻辑共用一个线程,对于handler处理逻辑比较复杂耗时长的来说,需要给handler一个单独的线程来处理,也就是io处理线程和handler线程分开,ioservice和ExecutorFilter分开): 服务端, 1、创建NIOSocketAcceptor 2、bind绑定地址端口,启动一个线程Accept线程,轮询是否有新的端口绑定

云计算、分布式架构、K8S、大数据、机器学习、搜索、推荐、广告 1万+
上一篇: 服务器及中间件:Apache MINA 线程模型配置
下一篇: mina 使用手记 2
DocSun
博客等级 码龄18年 3粉丝 3原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值