APP开发中经常会遇到这种需求,需要检查当前的APP是不是可见的,比如,如果是可见的就维持一个socket长连接,如果切到后台不可见了,就断开这个连接。Android本来并不允许APP去监听home键事件,所以我们没发像iOS那样通过监听home键事件来做对应的处理。不过还好Android的Activity的生命周期给我们提供了一种解决这个问题的方法,我们只需要在每个Activity的onStar...
分类:
移动开发 时间:
2015-04-21 22:42:07
阅读次数:
334
1. HTTP协议与TCP/IP协议的关系HTTP的长连接和短连接本质上是TCP长连接和短连接。HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠的传递数据包,使在网络上的另一端收到发端发出的所有包,并且顺...
分类:
Web程序 时间:
2015-04-20 14:27:01
阅读次数:
159
大家好:
我近期写了一个TCP长连接的框架,封装的Netty,序列化采用的是PB,内存缓存用的Google的Guava。项目托管在GitHub上,开源希望大家能用起来并且一起维护这个项目。我是做游戏服务器的,像客户端的引擎框架有Cocos2d , Unity等。而服务器没有相对来说比较好的开源的架构(或者说鄙人学识浅薄没有发现)。我也经历了几个游戏从开发到上线的这样一个过程,所以也看到过几个比较...
分类:
其他好文 时间:
2015-04-20 11:16:45
阅读次数:
122
简介我们都知道,websocket主要是通过在浏览器和服务端建立长连接,继而实现二者的相互数据通信。不同于HTTP的轮询,它不会有大量无效的HTTP消息交换,从而节省了花销。websocket其实就是双通道的TCP连接。很明显地,整个工作分为两个步骤,即创建连接和发送数据。那么连接是怎么建立的呢?其...
分类:
Web程序 时间:
2015-04-18 20:30:37
阅读次数:
137
要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识。大致了解几个基本术语(HTTPS、SSL、TLS)的含义大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接”)大致了解加密算法的概念(尤其是“对称加密与非对称加密”的区别)大致了解 CA 证书的用途 考虑到很多技术菜....
分类:
Web程序 时间:
2015-04-18 10:03:09
阅读次数:
182
TCP-long-connection-based-on-Apache-mina基于Apache mina 的tcp长连接实现,可用于android客户端推送。项目将Apache的mina项目移植到了android平台。实现长连接的主要思想是使用了mina的KeepAliveFilter过滤器。acceptor.getFilterChain().addLast("keeplive", new Kee...
分类:
移动开发 时间:
2015-04-18 08:47:08
阅读次数:
262
Magent介绍Magent是一款开源的Memcached代理服务器软件。项目地址:http://code.google.com/p/memagent功能列表:和每个memcacheserver保持多个长连接,效果是减少memcacheserver保持的连接数量及创建销毁连的开销。不过,memcache本身就支持大并发连接,这个功能也就没什么特..
分类:
其他好文 时间:
2015-04-17 18:35:43
阅读次数:
204
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=190176&id=4234854一 前言当管理大量连接时,特别是只有少量活跃连接,NGINX有比较好的CPU和RAM利用率,如今是多终端保持在线的时代,更能让NGINX发挥这个优点。本文...
分类:
其他好文 时间:
2015-04-16 12:19:54
阅读次数:
192
工程中使用tcp长连接来和服务端进行数据传输,在IOS平台上,由于苹果的后台机制,会有以下问题:当程序退到后台的时候,所有线程被挂起,系统会回收所有的socket资源,那么socket连接就会被关闭,因此无法再进行数据的传输:解决方法:通过设置以下属性可以保持socket连接和数据的继续传输1.需要...
分类:
移动开发 时间:
2015-04-16 11:53:42
阅读次数:
137
用途session保存有服务器和客户端之间的会话。你浏览网页的时候,如果网页需要登录,当你输入账号登进去的时候,就会在客户端和服务器端各自生成一个session,表示连接已经建立,当连接断开时,session也死掉了。
session属于长连接
在网络层、传输层、应用层都可能存在会话
每一个session都有一个ID,用于标识该session,这样在连接建立后,可以根据session ID表示身份,...
分类:
其他好文 时间:
2015-04-16 10:25:52
阅读次数:
132