如果你写过 HTTP 接口、部署过 Linux 上的服务,但一碰到「浏览器之间实时传音视频」就不知道从哪下手,这门课值得先看一眼。它不讲前端怎么调 getUserMedia,而是把镜头对准服务端:信令怎么走、媒体流怎么转发、连接怎么在几十万路并发下不崩。对做后端的人来说,这是一块相对空白、又确实有岗位需求的方向。

它解决的是哪类工作场景

日常最典型的场景是:公司要做一对一通话、在线客服视频、远程看房、在线课堂这类功能,前端能调通 WebRTC,但服务端要么直接用开源方案,要么卡在「用户一多就掉线、延迟飙升」。这门课想补的就是中间那层——从零搭一个能自己掌控的流媒体服务器,理解 STUN/ICE 怎么帮两端打洞、RTCP 怎么反馈质量、RTP 怎么承载数据,以及信令层如何设计才不至于成为瓶颈。学它的收益不在于背协议,而在于遇到「连不上」「连上后卡」这类问题时,你能定位到是候选地址收集、NAT 穿透还是转发策略出了问题。

适合什么基础,先看哪几块

前提比较明确:你得写过服务端程序,熟悉 Linux 基本操作、Socket 编程和至少一门后端语言,对多线程或事件循环有概念。如果连进程、信号、文件描述符这些都不太清楚,直接看高并发部分会很吃力。建议的切入顺序是:先看信号处理与后台运行那几节,把「一个服务器进程怎么稳定跑在 Linux 上」这件事理顺,包括信号如何发送与响应、如何以守护进程或 fork 方式转到后台——这些是后面所有并发模型的地基,也最容易被跳过。然后再进入协议部分,最后看架构与优化。基础偏弱的话,协议那几块可以放慢,边看边用现成客户端做连通性验证。

学完能独立做什么,资料怎么配合练

比较现实的目标是:你能独立搭起一个支持多路会话的信令服务,让两端完成协商并建立媒体通道,并在此基础上做并发压测和调优,而不是只会调开源项目的配置。练习上别只看视频,每讲完一块就自己动手——信号那部分写个小程序验证收发,信令部分用两个浏览器标签页互连,协议部分抓包看实际的 RTP/RTCP 报文,对照讲解确认字段含义。高并发的内容需要配合压测工具反复试,观察连接数上升时进程的表现。资料按模块顺序推进即可,遇到卡壳先回去补 Linux 进程与网络基础,比硬啃架构更省时间。

课程目录

📁 3 3-7 以daemon方式切换到后台【不易整理‖请关注:CunWorkNoteS】.mp4
 [135.6 MB] 3-4 信号的发送与处理.mp4
 [129.6 MB] 3-1 一个最简单的服务器.mp4
 [297.5 MB] 3-2 Linux系统下的信号.mp4
 [166.4 MB] 3-3 几个重要的信号.mp4
 [152.1 MB] 3-6 以fork的方式创建后台进程.mp4
 [221.2 MB] 3-5 通过 sigaction 安装信号.mp4
 [140.8 MB] 📁 10 10-7 OpenSSL概念及使用.mp4
 [131.7 MB] 10-3 STUN Message type详解.mp4
 [111.3 MB] 10-8 DTLS协议详解.mp4
 [133.0 MB] 10-1 STUN协议介绍.mp4
 [143.0 MB] 10-4 STUN body详解.mp4
 [110.2 MB] 10-6 加密解密基本概念.mp4
 [203.5 MB] 10-2 STUN Message Type消息.mp4
 [132.2 MB] 10-5 ICE工作原理.mp4
 [170.7 MB] 10-9 TLS-SRTP协议讲解.mp4
 [155.6 MB] 📁 9 9-2 RTCP协议头的分析.mp4
 [102.0 MB] 9-7 RTCP FB 协议介绍.mp4
 [132.8 MB] 9-6 BYE APP 报文介绍.mp4
 [67.5 MB] 9-5 RTCP RR SDES 报文介绍.mp4
 [115.1 MB] 9-3 RTCP PayloadType 介绍.mp4
 [158.8 MB] 9-4 RTCP SR 包文详解.mp4
 [151.3 MB] 9-1 RTP包的使用.mp4
 [85.2 MB] 📁 14 14-4 javaScriptES6高级特性.mp4
 [84.1 MB] 14-9 运行时查看Mediasoup的核心信息.mp4
 [144.1 MB] 14-3 javaScript基本语法二.mp4
 [155.4 MB] 14-1 mediasoup-demo整体分析【整理不易‖记得关注:CunWorKNotes】.mp4
 [158.3 MB] 14-2 javaScript基本语法一.mp4
 [170.1 MB] 14-5 Promise与EentEmitter详解.mp4
 [84.1 MB] 14-6 剖析sererjs.mp4
 [282.9 MB] 14-8 如何调试MediasoupDemo.mp4
 [173.7 MB] 14-7 剖析roomjs.mp4
 [273.4 MB] 📁 12 12-4 SFU架构模型详解.mp4
 [123.0 MB] 12-8 Mediasoup流媒体服务器架构及特点.mp4
 [108.4 MB] 12-5 Licode流媒体服务器架构和特点.mp4
 [100.3 MB] 12-2 Mesh架构模型详解.mp4
 [133.6 MB] 12-1 多人互动架构方案.mp4
 [170.3 MB] 12-6 Janus流媒体服务器的架构及特点.mp4
 [154.8 MB] 12-3 MCU架构模型详解.mp4
 [105.1 MB] 12-7 Medooze流媒体服务器架构及特点.mp4
 [104.8 MB] 📁 13 13-1 Mediasoup的运行环境.mp4
 [149.2 MB] 13-2 Mediasoup Demo的布署.mp4
 [272.2 MB] 13-5 通过WWW服务发布mediasoup客户端代码.mp4
 [261.7 MB] 13-3 通过Nodejs实现HTTP服务.mp4
 [123.9 MB] 13-4 HTTPS基本知识.mp4
 [90.8 MB] 13-6 作业-客户端是如何与信令服务建立连接的.mp4
 [63.9 MB] 📁 7 7-2 libeent实现高性能服务器.mp4
 [500.9 MB] 7-1 比较有名的异步IO处理库的介绍.mp4
 [184.8 MB] 7-3 作业-libu实现对UDP的处理【资源精选‖更多关注:CunworkNotes】.mp4
 [47.7 MB] 📁 4 4-2 TCPSerer的实现1.mp4
 [274.2 MB] 4-1 TCPSerer实现原理.mp4
 [96.4 MB] 4-4 TCP客户端的实现.mp4
 [347.0 MB] 4-3 TCPSerer的实现2【持续更新‖免费提供:CunworknoteS】.mp4
 [262.9 MB] 4-6 作业-实现一个TCPUDP网络服务器.mp4
 [43.7 MB] 4-5 作业-UDP服务端与客户端的实现.mp4
 [54.1 MB] 📁 15 15-5 匿名管道进程间通信的原理.mp4
 [143.6 MB] 15-12 mediasoup连接的创建2.mp4
 [231.9 MB] 15-4 Mediasoup启动详解.mp4
 [236.1 MB] 15-14 mediasoup数据流转2.mp4
 [139.5 MB] 15-8 mediasoup中的消息确信与发送事件机制.mp4
 [169.2 MB] 15-13 mediasoup数据流转1.mp4
 [194.7 MB] 15-9 mediasoup的主业务流程1.mp4
 [216.1 MB] 15-2 Mediasoup_JS_的作用.mp4
 [186.0 MB] 15-15 WebRTC流媒体服务器大规模布署方案.mp4
 [154.8 MB] 15-1 mediasoup库的架构讲解.mp4
 [219.9 MB] 15-11 mediasoup连接的创建1.mp4
 [267.6 MB] 15-6 实战通过socketpair进行进程间通信【持续更新‖免费提供:CunworknoteS】.mp4
 [240.5 MB] 15-3 WebRTC中的C++类关系图.mp4
 [256.7 MB] 15-10 mediasoup的主业务流程2.mp4
 [196.3 MB] 15-7 mediasoup下channel创建的详细过程.mp4
 [264.5 MB] 📁 16 16-1 小结【不易整理‖请关注:CunWorkNoteS】.mp4
 [360.8 MB] 📁 5 5-3 再论select函数.mp4
 [155.8 MB] 5-2 通过select实现高性能服务器.mp4
 [435.0 MB] 5-1 通过fork的方式实现高性能网络服务器.mp4
 [206.3 MB] 📁 11 11-6 WebRTC中SDP各字段含义详解.mp4
 [250.5 MB] 11-3 SDP描述信息.mp4
 [90.7 MB] 11-1 媒体协商过程.mp4
 [148.2 MB] 11-2 SDP协议简介.mp4
 [92.2 MB] 11-4 SDP关键字段的含义及其使用.mp4
 [189.6 MB] 11-5 WebRTC中的SDP.mp4
 [178.6 MB] 📁 1 1-2 导学.mp4
 [289.9 MB] 📁 2 2-1 C++知识回顾之helloworld.mp4
 [134.0 MB] 2-8 内存地址空间与指针.mp4
 [91.5 MB] 2-4 命名空间.mp4
 [164.5 MB] 2-5 继承1.mp4
 [280.8 MB] 2-9 堆空间与栈空间.mp4
 [92.3 MB] 2-3 类的使用.mp4
 [130.3 MB] 2-7 多态.mp4
 [261.3 MB] 2-10 深拷贝与浅拷贝.mp4
 [64.7 MB] 2-6 继承2.mp4
 [222.8 MB] 2-2 类的定义和实现.mp4
 [197.1 MB] 📁 8 8-5 TCP_ACK_机制.mp4
 [123.8 MB] 8-6 TCP滑动窗口.mp4
 [137.2 MB] 8-8 实时通信TCP_UDP的选择.mp4
 [97.4 MB] 8-1 IP协议详解.mp4
 [156.2 MB] 8-4 TCP四次挥手【持续更新‖免费提供:CunworknoteS】.mp4
 [165.0 MB] 8-9 TCP在实时通信中的作用.mp4
 [68.4 MB] 8-3 TCP三次握手.mp4
 [78.3 MB] 8-7 UDP与RTP.mp4
 [188.4 MB] 8-2 TCP协议详解.mp4
 [229.7 MB] 📁 6 6-3 epoll高性能服务器的实现2【不易整理‖请关注:CunWorkNoteS】.mp4
 [298.7 MB] 6-1 epoll基本知识【不易整理‖请关注:CunWorkNoteS】.mp4
 [161.1 MB] 6-4 epoll+fork进行性能优化.mp4
 [273.9 MB] 6-2 epoll高性能服务器的实现1【整理不易‖记得关注:CunWorKNotes】.mp4
 [288.2 MB] mediaserer.rar [6.2 KB] 适合人群 服务器开发工程师 网络工程师 WebRTC开发者 学习收获 掌握WebRTC服务器架构 精通信号处理与信令交互 实现高并发服务器优化 祝您学习愉快! 学有所成,前程似锦! 课程目录 第1章 课程导学与准备工作 第2章 C++语言基础回顾【已掌握,可略过】 第3章 服务器基础编程 第4章 网络编程基础 第5章 异步I/O事件处理 第6章 epoll实现高性能服务器 第7章 libevent实现高性能网络服务器 第8章 TCP/IP详解 第9章 UDP/RTP/RTCP 详解 第10章 WebRTC协议 第11章 SDP协议与WebRTC媒体协商【需花大力气牢牢掌握】 第12章 各流媒体服务器的比较 第13章 mediasoup服务器的布署与使用 第14章 mediasoup的信令系统 第15章 mediasoup源码分析 第16章 课程总结