是时候区分下即时通信和实时通信了

声网Agora.io, 于2014年成立,总部位于硅谷,研发中心位于上海. 这样的公司背景,比较适合我下一次选择的工作.

即时通信(im)追求可靠性, 基于TCP协议, 可以容忍一定的延时, 比如发短信, 晚几秒对用户体验影响不大.

实时通信(eg, 声网)追求低延时,基于UDP协议, 可以容忍一定量的数据丢失, 比如视频的实时通话, 使用场景可以是医疗会诊, 和现在比较火的直播平台.

Agora.io声网基于UDP协议,对丢包的情况开发了各种算法进行补偿,一方面尽量保证和恢复数据的连续性。

从成本上来看,一方面, 传输同样信息量的数据,基于TCP的即时通信方式,更侧重于可靠性,会优先采用多线机房的传输方式,成本比较高;

而基于UDP的实时通信方式,会优先选取最优路径进行传输数据,并可以动态调整传输路径,这样能够高效的利用带宽,提高传输效率,降低成本。

另一方面, 在服务器的存储方面,实时通信在服务端是实时转发,不会在服务端存储数据,而即时消息系统一般会将缓存转为存储数据,包括富媒体数据,会占用大量的存储空间,产生更多的存储成本。

即时通信:XMPP,MQTT

实时通信:WebRTC、 Tokbox

refer to:

http://cn.agora.io/tech-blogs/1530/

你可能感兴趣的:(是时候区分下即时通信和实时通信了)