[涨姿势] 带 u 了解即时通讯协议的昨天与今天

涨姿势咯,话说了解关于 IM 姿势滴小伙伴请举手!说你呢,快把手举起来。大家都知道今天的移动互联网和以往的互联网已经发生了翻天覆地滴改变,最主要的改变莫过于网络环境的变化了。辣么,这个改变对于 IM 最底层滴即时通讯协议又有啥米影响呢?

答案在介里:

以往的互联网时代,即时通讯的网络类型较为单一,表现为通过网线或者 WiFi 进行连接,网络环境固定且稳定。到了移动互联网时代,网络环境变得更加复杂与不稳定,首先表现为使用者网络类型不统一,如 2G 、 3G 、 4G 、 WIFI 等;其次,多变的地理环境,用户将随时处于地铁、电梯等网络信号不稳定的地方。所以,移动互联网的即时通讯协议设计时就要考虑到复杂的弱网络环境。

Soga ,原来是这样,既然如此,那么什么样的即时通讯协议是适合于移动互联网时代呢?

那自然是私有化二进制的协议了,辣么,私有化二进制协议与传统的互联网时代使用的 XMPP 协议又有啥米区别呢?

其实在以往的互联网时代 XMPP 协议还是有一定优势的,它自由、开放、公开的,并且易于了解。 而且在客户端 、 服务器 、 组件 、 源码库等方面,都已经各自有多种实现。在今天的移动互联网时代它的这些优势依然存在,但是它最的缺点就是它的不稳定性以及它的同时并发量低。之所以会有不稳定这种情况是因为前面我们也说到的今天的移动互联网的网络环境更为复杂,经常会有弱网的情况,而这种环境下,使用 XMPP 协议就不能保证消息的稳定了。再者就是并发量了,在这里给大家举一个现实的例子。陌陌在上市之前曾经有一段时间底层的即时通讯协议使用的是 XMPP 协议,当陌陌的用户量达到万级时候用户接收到的消息滞后、乱序,而当用户量达到数十万的时候用户开始反映经常接受不到消息,甚至有时会出现闪退现象。后来随着用户量越来越大,陌陌直接推翻原有的 XMPP 协议,自主开发一套私有化二进制协议。然而私有化二进制通过架构师的搭建都能避免使用 XMPP 协议出现的这些问题,当然这对于底层架构师的要求会比较高一点了。一个好的协议需要满足如下条件:高效,简洁,可读性好,节约流量,易于拓展。

好了,说了这么多,偶要去喝口水了,不知道讲滴怎么样,欢迎大家留言吐槽哦,希望大家多多关注偶的账号,记住,我是融云布道师, See U~!

时间: 2024-09-29 10:35:44

[涨姿势] 带 u 了解即时通讯协议的昨天与今天的相关文章

【涨姿势】带u了解即时通讯协议的昨天与今天

涨姿势咯,话说了解关于IM 姿势滴小伙伴请举手!说你呢,快把手举起来.大家都知道今天的移动互联网和以往的互联网已经发生了翻天覆地滴改变,最主要的改变莫过于网络环境的变化了.辣么,这个改变对于 IM 最底层滴即时通讯协议又有啥米影响呢?   答案在介里: 以往的互联网时代,即时通讯的网络类型较为单一,表现为通过网线或者WiFi进行连接,网络环境固定且稳定.到了移动互联网时代,网络环境变得更加复杂与不稳定,首先表现为使用者网络类型不统一,如2G.3G.4G.WIFI等:其次,多变的地理环境,用户将随

xmpp即时通讯协议的特性---长处和缺点!

xmpp协议的定义? XMPP是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性. 因此.基于XMPP的应用具有超强的可扩展性.经过扩展以后的XMPP能够通过发送扩展的信息来处理用户的需求.以及在XMPP的顶端建立如内容公布系统和基于地址的服务等应用程 序. 并且,XMPP包括了针对server端的软件协议,使之能与还有一个进行通话,这使得开发人员更easy建立客户应用程序或给一个配好系统加入功能. 在此我概括一下xmpp协议的优缺点: 长处: XMPP协议是自由.

MQTT是IBM开发的一个即时通讯协议,构建于TCP/IP协议上,是物联网IoT的订阅协议,借助消息推送功能,可以更好地实现远程控制

最近一直做物联网方面的开发,以下内容关于使用MQTT过程中遇到问题的记录以及需要掌握的机制原理,主要讲解理论. 背景 MQTT是IBM开发的一个即时通讯协议.MQTT构建于TCP/IP协议上,面向M2M和物联网IoT的连接协议,采用轻量级发布和订阅消息传输机制.Mosquitto是一款实现了 MQTT v3.1 协议的开源消息代理软件,提供轻量级的,支持发布/订阅的的消息推送模式,使设备对设备之间的短消息通信简单易用. 基本概念 [MQTT协议特点]——相比于RESTful架构的物联网系统,MQ

Android中即时通讯协议选择

Android中的即时通讯,就是客户端要与服务器建立长时间的连接,正常情况下Android中请求服务器数据后,连接一般断开.但即时通讯类的对消息的实时性要求比较高.需要客户端与服务器建立长时间的连接,这样,才能保证消息的时实性. 1.XMPP协议 1.XMPP基于xml,XMPP用TCP传递的是xml流.它具有xml的灵活性和扩展性.可以实现服务类实时通讯. XMPP的核心XML流传输协议的定义使得XMPP能够在一个比以往网络通信协议更规范的平台上.借助于XML易于解析和阅读的特性. XMPP核

xmpp即时通讯协议的特性---优点和缺点!

xmpp协议的定义? XMPP是一种基于标准通用标记语言的子集XML的协议,它继承了在XML环境中灵活的发展性.因此,基于XMPP的应用具有超强的可扩展性.经过扩展以后的XMPP可以通过发送扩展的信息来处理用户的需求,以及在XMPP的顶端建立如内容发布系统和基于地址的服务等应用程 序.而且,XMPP包含了针对服务器端的软件协议,使之能与另一个进行通话,这使得开发者更容易建立客户应用程序或给一个配好系统添加功能. 在此我概括一下xmpp协议的优缺点: 优点: XMPP协议是自由.开放.公开的,并且

IM即时通讯实现原理

即时通讯(Instant Messenger,简称IM)软件多是基于TCP/IP和UDP进行通讯的,TCP/IP和UDP都是建立在更低层的IP协议上的两种通讯传输协议.前 者是以数据流的形式,将传输数据经分割.打包后,通过两台机器之间建立起的虚电路,进行连续的.双向的.严格保证数据正确性的文件传输协议.而后者是以数 据报的形式,对拆分后的数据的先后到达顺序不做要求的文件传输协议. QQ就是使用UDP协议进行发送和接收消息的.当你的机器安装了OICQ以后,实际上,你既是服务端(Server),又是

基于Android 平台简易即时通讯的研究与设计[转]

摘要:论文简单介绍Android 平台的特性,主要阐述了基于Android 平台简易即时通讯(IM)的作用和功能以及实现方法.(复杂的通讯如引入视频音频等可以考虑AnyChat SDK~)关键词:Android 平台:即时通讯 (本文中图表点击附件即可见) 1 Android 平台简介Android 是Google 公司于2007年11月5日推出的手机操作系统,经过2年多的发展,Android平台在智能移动领域占有不小的份额,由Google为首的40 多家移动通信领域的领军企业组成开放手机联盟(

IM即时通讯实现原理 (转)

即时通讯(Instant  Messenger,简称IM)软件多是基于TCP/IP和UDP进行通讯的,TCP/IP和UDP都是建立在更低层的IP协议上的两种通讯传输协议.前 者是以数据流的形式,将传输数据经分割.打包后,通过两台机器之间建立起的虚电路,进行连续的.双向的.严格保证数据正确性的文件传输协议.而后者是以数 据报的形式,对拆分后的数据的先后到达顺序不做要求的文件传输协议. QQ就是使用UDP协议进行发送和接收消息的.当你的机器安装了OICQ以后,实际上,你既是服务端(Server),又

基于Android平台简易即时通讯的研究与设计

1 Android平台简介 Android是Google公司于2007年11月5日推出的手机操作系统,经过2年多的发展,Android平台在智能移动领域占有不小的份额,由Google为首的40多家移动通信领域的领军企业组成开放手机联盟(OHA).Google与运营商.设备制造商.开发商和其他第三方结成深层次的合作伙伴关系,希望通过建立标准化.开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统.正因如此,Android正在被越来越多的开发者和使用者所接受.近日,Google发言人Ant