收藏

百万级高并发WebRTC流媒体服务器设计与开发

适配5G时代的高负载、高性能、“多方”实时互动音视频服务器技术

百万级高并发WebRTC流媒体服务器设计与开发

¥366.00
难度 高级 时长 20小时 学习人数 1862 综合评分 10.00
  • 第1章 课程导学与准备工作 2 节 | 19分钟

    本章主要介绍为何要学习WebRTC流媒体服务器开发,以及本门课能为我们带来哪些收获。之后会为大家介绍本课程内容具体安排,最后给出如何学好这门课程的一些学习建议。希望大家都能通过这门课程,学有所成,学有所归。

    收起列表

    • 图文: 1-1 课前必读(不看会错过一个亿)
    • 视频: 1-2 导学 (18:54) 试看
  • 第2章 C++语言基础回顾【已掌握,可略过】 10 节 | 107分钟

    为了便于大家更好的学习流媒体服务器的开发,本章将带大家对WebRTC服务器开发中用到的C++基础知识进行回顾梳理,如类的定义与使用,继承,多态,名存空间等相关知识。

    收起列表

    • 视频: 2-1 C++知识回顾之helloworld (08:41)
    • 视频: 2-2 类的定义和实现 (12:46)
    • 视频: 2-3 类的使用 (08:28)
    • 视频: 2-4 命名空间 (10:44)
    • 视频: 2-5 继承1 (18:19)
    • 视频: 2-6 继承2 (14:35)
    • 视频: 2-7 多态 (16:55)
    • 视频: 2-8 内存地址空间与指针 (05:56)
    • 视频: 2-9 堆空间与栈空间 (06:01)
    • 视频: 2-10 深拷贝与浅拷贝 (04:09) 试看
  • 第3章 服务器基础编程 试看 7 节 | 81分钟

    本章将带你学习最基础的服务器开发,让你体会服务器开发其实如此简单。

    收起列表

    • 视频: 3-1 一个最简单的服务器 (19:17) 试看
    • 视频: 3-2 Linux系统下的信号 (10:48)
    • 视频: 3-3 几个重要的信号 (09:54)
    • 视频: 3-4 信号的发送与处理 (08:24)
    • 视频: 3-5 通过 sigaction 安装信号 (09:09)
    • 视频: 3-6 以fork的方式创建后台进程 (14:17)
    • 视频: 3-7 以daemon方式切换到后台 (08:49)
  • 第4章 网络编程基础 6 节 | 71分钟

    本章将带你了解如何在服务端开发网络服务器程序。

    收起列表

    • 视频: 4-1 TCPServer实现原理 (06:18)
    • 视频: 4-2 TCPServer的实现1 (17:51)
    • 视频: 4-3 TCPServer的实现2 (17:12)
    • 视频: 4-4 TCP客户端的实现 (22:35)
    • 视频: 4-5 作业-UDP服务端与客户端的实现 (03:32)
    • 视频: 4-6 作业-实现一个TCP/UDP网络服务器 (02:51)
  • 第5章 异步I/O事件处理 3 节 | 52分钟

    本章将带你掌握异步IO事件处理原理。

    收起列表

    • 视频: 5-1 通过fork的方式实现高性能网络服务器 (13:26)
    • 视频: 5-2 通过select实现高性能服务器 (28:21)
    • 视频: 5-3 再论select函数 (10:09)
  • 第6章 epoll实现高性能服务器 4 节 | 67分钟

    本章将带你学习Linux下最高效的异步IO事件处理函数epoll的使用。

    收起列表

    • 视频: 6-1 epoll基本知识 (10:27)
    • 视频: 6-2 epoll高性能服务器的实现1 (18:51)
    • 视频: 6-3 epoll高性能服务器的实现2 (19:25)
    • 视频: 6-4 epoll+fork进行性能优化 (17:57)
  • 第7章 libevent实现高性能网络服务器 3 节 | 48分钟

    本章将带你了解几个比较著名的开源事件处理库,epoll使用起来比较复杂,很多开源项目对epoll进行了封装,如libevent、libuv等,本章还会传授你如何提高开发网络异步IO服务器的效率。

    收起列表

    • 视频: 7-1 比较有名的异步IO处理库的介绍 (12:07)
    • 视频: 7-2 libevent实现高性能服务器 (32:20)
    • 视频: 7-3 作业-libuv实现对UDP的处理 (03:07)
  • 第8章 TCP/IP详解 9 节 | 81分钟

    本章将带你深入TCP/IP原理,对TCP协议、TCP三次握手、TCP四次挥手、UDP与RTP等核心内容做深入剖析。

    收起列表

    • 视频: 8-1 IP协议详解 (10:14)
    • 视频: 8-2 TCP协议详解 (15:03)
    • 视频: 8-3 TCP三次握手 (05:05)
    • 视频: 8-4 TCP四次挥手 (10:46)
    • 视频: 8-5 TCP_ACK_机制 (08:05)
    • 视频: 8-6 TCP滑动窗口 (08:53)
    • 视频: 8-7 UDP与RTP (12:11)
    • 视频: 8-8 实时通信TCP_UDP的选择 (06:16)
    • 视频: 8-9 TCP在实时通信中的作用 (04:27)
  • 第9章 UDP/RTP/RTCP 详解 7 节 | 53分钟

    本章将对UDP/RTP做深入讲解,重点带大家学习RTCP协议中的各个报文。

    收起列表

    • 视频: 9-1 RTP包的使用 (05:33)
    • 视频: 9-2 RTCP协议头的分析 (06:41)
    • 视频: 9-3 RTCP PayloadType 介绍 (10:18)
    • 视频: 9-4 RTCP SR 包文详解 (09:59)
    • 视频: 9-5 RTCP RR SDES 报文介绍 (07:27)
    • 视频: 9-6 BYE APP 报文介绍 (04:25)
    • 视频: 9-7 RTCP FB 协议介绍 (08:36)
  • 第10章 WebRTC协议 9 节 | 84分钟

    本章带你学习在多方通信时,该如何保障音视频的服务质量,一是从网络上如何进行优化,如防拥塞,流控,防抖动等;二是在音视频内容上如何进行优化,如SVC,多流,动态码率等。

    收起列表

    • 视频: 10-1 STUN协议介绍 (09:17)
    • 视频: 10-2 STUN Message Type消息 (08:36)
    • 视频: 10-3 STUN Message type详解 (07:15)
    • 视频: 10-4 STUN body详解 (07:04)
    • 视频: 10-5 ICE工作原理 (11:08)
    • 视频: 10-6 加密解密基本概念 (13:15)
    • 视频: 10-7 OpenSSL概念及使用 (08:33)
    • 视频: 10-8 DTLS协议详解 (08:46)
    • 视频: 10-9 TLS-SRTP协议讲解 (10:04)
  • 第11章 SDP协议与WebRTC媒体协商【需花大力气牢牢掌握】 6 节 | 62分钟

    SDP协议与媒体协商是WebRTC中的核心,同时也是 WebRTC的核心,本章将带你真正理解 WebRTC流媒体服务器是如何将多人联系到一起的。

    收起列表

    • 视频: 11-1 媒体协商过程 (09:41)
    • 视频: 11-2 SDP协议简介 (05:59)
    • 视频: 11-3 SDP描述信息 (05:55)
    • 视频: 11-4 SDP关键字段的含义及其使用 (12:22)
    • 视频: 11-5 WebRTC中的SDP (11:38)
    • 视频: 11-6 WebRTC中SDP各字段含义详解 (16:08)
  • 第12章 各流媒体服务器的比较 8 节 | 65分钟

    本章将介绍几种多方通信的架构模型,以及比较有名的开源项目的优劣情况,并传授大家如何选择出最适自己或适合团队的开源项目。

    收起列表

    • 视频: 12-1 多人互动架构方案 (11:06)
    • 视频: 12-2 Mesh架构模型详解 (08:39)
    • 视频: 12-3 MCU架构模型详解 (06:51)
    • 视频: 12-4 SFU架构模型详解 (08:00)
    • 视频: 12-5 Licode流媒体服务器架构和特点 (06:31)
    • 视频: 12-6 Janus流媒体服务器的架构及特点 (10:04)
    • 视频: 12-7 Medooze流媒体服务器架构及特点 (06:48)
    • 视频: 12-8 Mediasoup流媒体服务器架构及特点 (07:01)
  • 第13章 mediasoup服务器的布署与使用 6 节 | 71分钟

    本章将带你了解一个真正的多方通信是如何搭建起来的。

    收起列表

    • 视频: 13-1 Mediasoup的运行环境 (11:00)
    • 视频: 13-2 Mediasoup Demo的布署 (20:05)
    • 视频: 13-3 通过Nodejs实现HTTP服务 (09:06)
    • 视频: 13-4 HTTPS基本知识 (06:42)
    • 视频: 13-5 通过WWW服务发布mediasoup客户端代码 (19:14)
    • 视频: 13-6 作业-客户端是如何与信令服务建立连接的 (04:40)
  • 第14章 mediasoup的信令系统 9 节 | 113分钟

    本章将讲解如何实现流媒体服务器的信令系统,以及信令与数据转发之间是如何进行配合的。一般信令系统都是整个系统的灵魂,知道了信令的运转就撑握了系统的脉落,这样就能很轻松的知道Mediasoup的运行逻辑了。

    收起列表

    • 视频: 14-1 mediasoup-demo整体分析 (11:46)
    • 视频: 14-2 JavaScript基本语法一 (12:28)
    • 视频: 14-3 JavaScript基本语法二 (11:32)
    • 视频: 14-4 JavaScriptES6高级特性 (06:13)
    • 视频: 14-5 Promise与EventEmitter详解 (06:17)
    • 视频: 14-6 剖析serverjs (21:01)
    • 视频: 14-7 剖析roomjs (20:01)
    • 视频: 14-8 如何调试MediasoupDemo (12:57)
    • 视频: 14-9 运行时查看Mediasoup的核心信息 (10:37)
  • 第15章 mediasoup源码分析 20 节 | 231分钟

    本章将带你详细了解Mediasoup是如何设计的,它又是如何达到高可用,可扩展的,性能是如何优化的,本章你将不仅领略到高性能流媒体服务器的设计精髓, 知道好的架构设计是如何的优美,也会知道所有高性能服务器的实现都是每个细微处的不断打磨才造就出来的。...

    收起列表

    • 视频: 15-1 mediasoup库的架构讲解 (16:14)
    • 视频: 15-2 Mediasoup_JS_的作用 (13:44)
    • 视频: 15-3 WebRTC中的C++类关系图 (19:03)
    • 视频: 15-4 Mediasoup启动详解 (17:38)
    • 视频: 15-5 匿名管道进程间通信的原理 (10:38)
    • 视频: 15-6 实战通过socketpair进行进程间通信 (17:46)
    • 视频: 15-7 mediasoup下channel创建的详细过程 (19:36)
    • 视频: 15-8 mediasoup中的消息确信与发送事件机制 (12:31)
    • 视频: 15-9 mediasoup的主业务流程1 (15:41)
    • 视频: 15-10 mediasoup的主业务流程2 (14:40)
    • 视频: 15-11 mediasoup连接的创建1 (19:36)
    • 视频: 15-12 mediasoup连接的创建2 (17:21)
    • 视频: 15-13 mediasoup数据流转1 (14:24)
    • 视频: 15-14 mediasoup数据流转2 (10:32)
    • 视频: 15-15 WebRTC流媒体服务器大规模布署方案 (11:25)
    • 作业: 15-16 哪种服务器性能好?
    • 作业: 15-17 mediasoup在 Centos下该如何安装?
    • 作业: 15-18 mediasoup安装好后看不对远端视频
    • 作业: 15-19 mediasoup在Ubuntu18.04上安装报错
    • 作业: 15-20 单台mediasoup流媒体服务器能承载多少路流?
  • 第16章 课程总结 1 节 | 27分钟

    本章将带领大家全面总结梳理本门课程的思想和核心技术。

    收起列表

    • 视频: 16-1 小结 (26:42)
本课程已完结

试看

全部试看小节



讲师

李超 全栈工程师

北京音视跳动首席架构师。拥有10多年的音视频实时互动直播研发经验,多年团队管理经验。参加并设计了多个高负载,大并发服务器架构。曾在全时云会议担任研发经理,带领团队研发同时进行10000场会议的音视频会议平台。曾在跟谁学团队担任直播研发高级经理,带领团队研发在线教育直播平台,同一教室内可支持上万人。

讲师其他课程

课程预览

检测到您还没有关注慕课网服务号,无法接收课程更新通知。请扫描二维码即可绑定
重新观看
意见反馈 帮助中心 APP下载
官方微信

学习咨询

选课、学习遇到问题?

扫码添加指导老师 1V1 帮助你!

添加后老师会第一时间解决你的问题