即时通讯--socketio
1.即时通讯介绍 即时通讯是基于TCP长连接, 建立连接之后, 客户端/服务器可以无限次随时向对端发送数据, 实现服务器数据发送的即时性 http是短连接, 设计的目的是减少服务器的压力 http伪即时通讯 轮训 emmet 长轮训 long pulling 使用场景 聊天功能 在线即时推送 如下单后立即推送给商户 实现即时通讯 自己搭建服务器 选择支持的协议 websocket xmpp 使用一些比较成熟的框架 socketio xmppframework 自己封装socket 使用成熟的第三方方案 融云 环信 2.websocket和socketio websocket和http都是基于tcp http建立的是短连接, 而websocket建立的是长连接 socket.io是基于websocket协议的一套成熟的解决方案 优点 性能好 支持多平台 缺点 传输的数据并不完全遵循websocket协议, 这就要求客户端和服务端都必须使用socket.io解决方案 安装 pip install python-socketio 3. 搭建socketio服务器 (重点) 搭建支持协程的socket服务器 pip install python-socketio pip install eventlet # eventlet包提供了协程的支持 安装chrome插件firecamp