这个问题是之前测试上万个连接的pingpong发现的,调了很久,但当时急着做其他事,就没有详细记录下来,现在回想起来也有点记不清具体哪儿了。 表现是在测试上万个连接的pingpong时会出现服务器挂起的现象,服务端无法收到任何消息,由于服务器用了OrderedThreadPoolExecuto...
分类:
其他好文 时间:
2014-08-18 20:28:12
阅读次数:
176
TCP是流式协议,不保证一次通信传输完整的包,当这种情况发生在mina-http时会产生严重的bug,图中红框部分只是将前后收到的数据拼在一起,但下面处理的还是最近收到的不完整的msg;此为大坑! 轻则不能正常处理http请求,重则由于mina-http内部使用状态机解析http请求,会导致内...
分类:
其他好文 时间:
2014-08-18 20:22:32
阅读次数:
233
Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架。当前发行的 MINA 版本支持基于 Java NIO 技术的 TCP/...
分类:
移动开发 时间:
2014-08-16 11:02:50
阅读次数:
339
mina example 依赖jar包 org.apache.mina mina-core ${mina.version} org.apache.m...
分类:
其他好文 时间:
2014-08-15 14:28:18
阅读次数:
484
MINA、Netty、Twisted为什么放在一起学习?它们的共同特点:event-driven以及asynchronous。它们都是事件驱动、异步的网络编程框架。由此可见,它们之间的共同点还是很明显的。所以我这里将这三个框架放在一起,实现相同的功能,不但可以用少量的精力学三样东西,而且还可以对它们之间进行各方面的对比。...
分类:
Web程序 时间:
2014-08-15 12:57:19
阅读次数:
272
好了,开始研究源码了。目前对androidpn,只限于使用过它,跑了一下demo。现在开始研究一下源码。(一)入口当服务器端启动的时候,控制台会打印一些log,除了spring和hibernate,mina,在最后的几行,就是androidpn的代码了,第一个是XmppServer类。在XmppSe...
分类:
移动开发 时间:
2014-08-11 11:28:32
阅读次数:
394
Mina框架与Spring的整合其实很简单,主要是要弄清楚要注入的属性的名称,进而选择合适的注入方法。...
分类:
编程语言 时间:
2014-08-07 19:15:30
阅读次数:
237
Mina框架断包、粘包问题解决方案
Apache Mina Server 是一个网络通信应用框架,也就是说,它主要是对基于TCP/IP、UDP/IP协议栈的通信框架(当然,也可以提供JAVA 对象的序列化服务、虚拟机管道通信服务等),Mina 可以帮助我们快速开发高性能、高扩展性的网络通信应用,Mina 提供了事件驱动、异步(Mina 的异步IO 默认使用的是JAVA NIO 作为底层支持)...
分类:
其他好文 时间:
2014-08-07 15:49:50
阅读次数:
259
由于公司之前使用的手机客户端推送服务是极光推送,给公司造成一年几十万的服务费,因此,公司决定开发自己的一套推送服务,初步的技术选型是:服务端:netty4关于netty框架在我的下面的博客里面我整理了相关资料,本来还有一些关于mina的由于时间原因暂时没整理出来。为了便于..
分类:
移动开发 时间:
2014-08-03 07:54:35
阅读次数:
277
一、MINA简介 在介绍Mina之前,要先介绍一下NIO和BIO这两个名词: BIO:Blocking IO,阻塞IO,每个客户端的请求对应一个线程处理。使用BIO有一个问题,当客户端的连接请求过多时,服务端就会需要很多线程来处理客户端的请求,这样很容易使得服务器资源消耗过度等问题。 NIO:...
分类:
其他好文 时间:
2014-07-29 21:02:22
阅读次数:
232