程序员人生 网站导航

B/S架构的实时通信

栏目:框架设计时间:2015-02-28 08:11:13
        对web的实时通讯,例如基于Browser(下简称B)的网络聊天程序,目前主要还是靠B端向Server(下简称S)端发起轮询取得最新信息。webserver在设计的时候斟酌到B端可能数量太大,所以没有保存与B真个连接信息(如IP之类的)方便下次连接,所以B/S之间的数据交互,是由B端发起的。固然,HTML5定义了WebSocket协议(阅读器还未实现),能更好的节省服务器资源和带宽并到达实时通讯。
        轮询,对大多数要求是获得不到后台更新的数据,如果频率太高则占用带宽,太低则没法及时显示实时数据。大体的做法是:B端ajax要求超时时间设长点,让其在S端没有返回数据的情况下hold住connection;S端则查询相干数据,如果有更新数据则立马返回,否则不停地循环直到有更新数据或到达预设定的阈值为止,在每次循环中可以适当sleep1段时间。
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐