XMPP
文章平均质量分 62
Lee的博客
关注大规模数据处理相关开源技术,包括:YARN/MRv2,MRv1,HDFS
展开
-
Mina简介
Apache的Mina(Multipurpose Infrastructure Networked Applications)是一个网络应用框架,可以帮助用户开发高性能和高扩展性的网络应用程序;它提供了一个抽象的、事件驱动的异步API,使Java NIO在各种传输协议(如TCP/IP,UDP/IP协议等)下快速高效开发。 Apache Mina也称为: 1.NIO框架 2.客原创 2014-03-29 10:54:46 · 1012 阅读 · 0 评论 -
Mina 通讯原理
异步 IO 模型 异步 I/O 模型大体上可以分为两种,反应式 (Reactive) 模型和前摄式 (Proactive) 模型: 1. 传统的 select /epoll / kqueue 模型,以及 Java NIO 模型,都是典型的反应式模型,即应用代码对 I/O 描述符进行注册,然后等待 I/O 事件。当某个或某些 I/O 描述符所对应的 I/O 设备上产生 I/O 事件(可读、可写、转载 2014-03-29 11:10:25 · 1007 阅读 · 0 评论 -
IoFilter接口
Mina最主要的工作就是把底层传输的字节码转换为Java对象,提供给应用程序;或者把应用程序返回的结果转换为字节码,交给底层传输。这些都是由IoFilter完成的,因此IoFilter是Mina的精髓所在。 在Mina程序中,IoFilter是必不可少的;有了它,Mina的层次结构才异常清晰: IoFilter ---- 消息过滤 IoHandler ---- 业务处理原创 2014-03-29 11:15:30 · 1760 阅读 · 0 评论 -
openfire 分析
在Openfire中主要用filter这种机制来进行数据转换。 Protocol Codec Factory: Protocol Codec Factory提供了方便的Protocol支持,通过它的Encoder和Decoder,可以方便的扩展并支持各种基于Socket的网络协议,比如HTTP服务器、FTP服务器、Telnet服务器等等。 要实现自己的编码/解码器原创 2014-03-29 11:22:32 · 1161 阅读 · 0 评论 -
Mina 在项目中的位置
首先,看Mina在项目中所处的位置,如下图: Mina处于中间层,它不关心底层网络数据如何传输,只负责接收底层数据,过滤并转换为Java对象提供给我们的应用程序,然后把应用程序响应值过滤并转换为底层识别的字节,提供给底层传输; ------总之:Mina是底层数据传输和用户应用程序交互的接口! ------总之:Mina是底层数据传输和用户应用程序交互的接口! Mina工作流程原创 2014-03-29 11:02:19 · 1179 阅读 · 0 评论 -
自定义Mina编解码器
协议编解码器是在使用Mina 的时候最需要关注的对象,因为网络传输的数据都是二进制数据(byte),而在程序中面向的是JAVA 对象,这就需要在发送数据时将JAVA 对象编码二进制数据,接收数据时将二进制数据解码为JAVA 对象。 编解码器同样是以过滤器的形式安插在过滤器链上,如下所示: // 设置过滤器(使用Mina提供的文本换行符编解码器) acceptor.getFilterChain原创 2014-03-29 11:20:07 · 3485 阅读 · 0 评论