欢聚时代面试
记 2024/5/30 欢聚时代笔试,八股盛宴
实习
- 动态数据源切换,讲解具体流程,新加入一个省如何具体实现
- 人工客服MQTT具体如何实现流程
- 线程安全问题解决场景方案
项目
- rabbitmq实现延迟队列下单引入到八股
八股
计算机网络:输入一个url的整个流程,https做了什么,tcp拥塞控制,流量控制,超时重传,可靠传输,tcp和udp区别,对应的不同场景,在微信视频通话中tcp和udp的应用是什么
操作系统:进程与线程区别,虚拟内存和真实物理内存的映射等
jvm内存结构
并发编程:多线程,线程池,AQS,悲观锁和乐观锁
MySQL:MySQL底层数据结构,为什么使用B+树,联合索引,聚集索引和非聚集索引,回表查询,explain关键字,索引优化,慢接口如何排查,线上排查日志方式
rabbitmq消息的可靠性如何实现,如何保证消息消费不重复
相关补充问答
在微信视频通话中tcp和udp的应用是什么
在视频聊天应用中,TCP(传输控制协议)和UDP(用户数据报协议)都有其特定的应用场景,基于它们各自的特点。下面是这两种协议在视频聊天中的具体应用场景:
UDP 在视频聊天中的应用
- 视频和音频数据传输:
- 实时性:视频聊天对实时性要求很高,UDP传输不需要建立连接,也没有确认机制,数据包一旦发送就不会被重传,这样可以降低延迟。
- 容错性:视频和音频流对于少量的数据丢失具有容错性,偶尔丢失几个数据包不会显著影响用户体验。
- 效率:UDP头部较小,传输效率高,适合频繁、大量的小数据包传输,如视频帧和音频样本。
TCP 在视频聊天中的应用
信令和控制信息:
- 可靠性:TCP提供可靠的数据传输,通过确认机制和重传保证数据的完整性和顺序。这对于视频聊天中的信令(如呼叫建立、挂断、会话参数协商等)非常重要,因为这些信息必须准确无误地传输。
- 有序性:TCP确保数据按顺序到达,对于需要顺序处理的控制信息非常关键。
初始连接建立:
- 握手过程:在视频聊天开始时,TCP可以用于建立和协商连接参数,例如通过HTTP或HTTPS协议来进行身份验证和传输加密密钥等信息。
总结
- UDP 主要用于传输实时性要求高的视频和音频数据,因为它传输速度快、延迟低,并且能容忍部分数据丢失。
- TCP 则用于传输信令和控制信息,需要可靠性和有序性保障的地方,确保视频聊天的控制部分能够准确无误地进行。
这种分工利用了两种协议各自的优势,使得视频聊天应用既能保证实时性和流畅度,又能确保连接和控制信息的可靠传输。
5/31 凉经了。。。。。。。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 PlanB's Blog!