IM & RTC
IM & RTC
即时通信(IM) & 实时通信(RTC)
场景
- 即时通信(可靠性高,延时高)
场景包括文字聊天、语音消息发送、文件传输、音视频播放等; 发短信
- 实时通信(可靠性低,延时低)
场景包括语音、视频电话会议、网络电话等; 打电话
产品需求点
- IM
可靠,送达率;
- RTC
低延时和接通率;
技术
1.即时通信
消息发送和确认,【消息接入端、服务端消息逻辑处理,服务端消息缓存和存储,转发,服务端用户状态管理,心跳机制,消息发送端】、消息接收和确认;
- 实时通信
采集、前处理、编码、【服务端接入、转发、服务端接入】、解码、播放和渲染;
传输协议 / 通信协议
TCP:Transmission Control Protocol,传输控制协议;
可靠,高延迟,高成本:基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接, 有延迟不可控的特点;
UDP:User Data Protocol,用户数据报协议;
不可靠,低延迟, 低成本:它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去, 存在丢包、抖动、延迟的特征;
解决方案
即时通信:XMPP,MQTT
实时通信:WebRTC、Tokbox
https://segmentfault.com/a/1190000005781672
WebRTC & FFmpeg
https://www.cnblogs.com/xgqfrms/p/12770458.html
Agora
https://segmentfault.com/u/agora
demo
https://segmentfault.com/a/1190000018247461
https://segmentfault.com/a/1190000018575278
IM & RTC的更多相关文章
- STM32F746的RTC使用
1.RTC模块采用低速晶振外接始终:32.768KHz,如下图所示 2.配置RTC模块: 其中,Fck_apre.Fck_spre始终上配置不容易理解, 如果想得到1Hz的始终频率,则需要将PERDI ...
- [nRF51822] 10、基础实验代码解析大全 · 实验15 - RTC
一.实验内容: 配置NRF51822 的RTC0 的TICK 频率为8Hz,COMPARE0 匹配事件触发周期为3 秒,并使能了TICK 和COMPARE0 中断. TICK 中断中驱动指示灯D1 翻 ...
- RTC时钟
1.设置时间之前取消备份区域(BKP)写保护 主要有两部分组成 1.用来和APB1总线对接,对其进行读写操作 2. 预分频模块:在RTC_CR设置相应的允许,位每个TR_CLK周期中RTC产生一个中断 ...
- S3C2440上RTC时钟驱动开发实例讲解(转载)
嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤.一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便.如有错误之处,谢请指正. 共享资源,欢迎转载:http:/ ...
- RTC实时时钟
作者:宋老师,华清远见嵌入式学院讲师. 1.1 RTC介绍 在 一个嵌入式系统中,通常采用RTC 来提供可靠的系统时间,包括时分秒和年月日等,而且要求在系统处于关机状态下它也能够正常工作(通常采用后备 ...
- 解决服务器时间Local time和RTC time不一致的问题
今天遇到了一个问题,发现程序读取的时间比实际的时间快了几分钟. 执行 timedatectl status 发现 Local time比实际的快,但是RTC time是准确的. 各种google也没搞 ...
- alarm rtc
http://sharp2wing.iteye.com/blog/1329518 http://blog.csdn.net/sking002007/article/details/6593809 io ...
- 转:RTC搭建android下三层应用程序访问服务器MsSql-服务器端
原文:http://www.cnblogs.com/delphi007/p/3346061.html 前几天通过Ro搭建webservice,然后在android下调用,虽然已近成功,但是返回的数据库 ...
- 转(Delphi 新窑洞):使用delphi 开发多层应用(十七)使用RTC web 服务器返回JSON
RTC作为delphi 的最专业的web 应用服务器,如果客户端要使用JSON 的话,那么使用RTC 应该也是一种 非常好的选择.下面我们做一个使用RTC web 服务器返回数据库JSON 的例子. ...
- 转:RealThinClient (RTC)是什么?
RealThinClient SDK是用于开发标准的HTTP(S)服务器,ISAPI扩展以及客户端的VCL控件.可用于Windows下的CodeGear Delphi 6-XE5. 功能描述 Abou ...
随机推荐
- 网易新闻App架构重构实践:DDD正走向流行
网易新闻App架构重构实践:DDD正走向流行 https://mp.weixin.qq.com/s/FdwrT_xn3CQqpWoRVBttvQ 小智 InfoQ 2020-05-14 作者 | 小智 ...
- Quartz 定时任务调度
一.在Quartz.NET中quartz.properties的配置文件,忽略不修改,考虑下面: var props = new NameValueCollection { { "quart ...
- loj 10127最大数
JSOI 2008 最大数 给定一个正整数数列a1,a2,a3,⋯,an,每一个数都在0∼p–1 之间.可以对这列数进行两种操作: 添加操作:向序列后添加一个数,序列长度变成 n+1: 询问操 ...
- java实现hbase数据库的增删改查操作(新API)
操作环境: java版本: jdk 1.7以上 hbase 版本:1.2.x hadoop版本:2.6.0以上 实现功能: 1,创建指定表 2,删除指定表 3,根据表名,行键,列族,列描述符,值 ...
- JVM调优之垃圾定位、垃圾回收算法、垃圾处理器对比
谈垃圾回收器之前,要先讲讲垃圾回收算法,以及JVM对垃圾的认定策略,JVM垃圾回收器是垃圾回收算法的具体实现,了解了前面的前置知识,有利于对垃圾回收器的理解. 什么是垃圾? 垃圾,主要是指堆上的对象, ...
- cassandra权威指南读书笔记--cassandra概述
cassandra是一个开源的.分布式.去中心化.弹性可扩展.高可用.容错.可调一致性.面向行数据库,分布式设计基于Amazon Dynamo,数据模型基于Google BigTable.cassan ...
- Java链表(英雄增删查改)
链表(Linked List)介绍 链表是有序的列表,但是它在内存中是存储如下 小结: 1.链表是以节点的方式来存储,是链式存储. 2.每个节点包含 data 域, next 域:指向下一个节点. 3 ...
- 看KubeEdge携手K8S,如何管理中国高速公路上的10万边缘节点
摘要:为保证高速公路上门架系统的落地项目的成功落地,选择K8s和KubeEdge来进行整体的应用和边缘节点管理. 一.项目背景 本项目是在高速公路ETC联网和推动取消省界收费站的大前提下,门架系统的落 ...
- gVerify验证码
1.引入js文件 2.实现 <%-- Created by IntelliJ IDEA. User: a Date: 2019/8/28 Time: 10:31 To change this t ...
- Codeforces Round #582 (Div. 3) E. Two Small Strings (构造,思维,全排列)
题意:给你两个长度为\(2\)的字符串\(s\)和\(t\),你需要构造一个长度为\(3n\)的字符串,满足:含有\(n\)个\(a\),\(n\)个\(b\),\(n\)个\(c\),并且\(s\) ...