基于C++从0到1手写Linux高性能网络编程框架
掌握C++11新特性综合运用,及网络框架、通讯协议设计及原理,助力在网络编程领域技术有更大的突破!
你将学到:
独立完成事件驱动网络编程框架
掌握服务间RPC通信协议设计
掌握事件驱动编程的原理及实现
掌握WebRTC P2P核心通信流程
掌握基于GO的HTTP框架设计
掌握C++11新特性综合运用
简介:
深度掌握网络编程是逆袭成为高阶开发者的秘密法宝,本课程深度讲解基于C++的Linux高性能事件驱动网络编程框架的设计方法及技巧,课程中采取渐进迭代的授课方式,配合C++11新特性的使用,以及网络编程理论的深度讲解,并手把手带着大家落地实现,助力在网络编程领域有更大的技术提升!
适合人群 后端开发工程师 对网络/多线程编程感兴趣 期望更深入掌握网络编程底层
技术储备 掌握Linux系统的基本使用 掌握C/C++/Java/GO等任意一门
环境参数 开发工具 vim 操作系统 Linux,Ubuntu
试看链接:https://pan.baidu.com/s/1hLes-Q7af0xbAL46nI_hZQ?pwd=wfvc
章节目录:第1章 事件驱动网络编程框架--课程导学 3 节|33分钟 展开 视频: 1-1 课程导学 试看 09:50 视频: 1-2 如何快速进阶后端高级工程师 试看 13:11 视频: 1-3 课程效果演示 试看 09:04 第2章 事件驱动编程的基础理论和典型应用分析 5 节|32分钟 收起 视频: 2-1 网络编程中的同步与异步、阻塞与非阻塞 07:41 视频: 2-2 什么是事件驱动编程? 07:16 视频: 2-3 事件驱动编程优缺点分析 05:48 视频: 2-4 Nginx事件驱动模型解析 04:25 视频: 2-5 Redis事件驱动模型解析 06:38 第3章 如何自主研发一套网络框架? 2 节|12分钟 收起 视频: 3-1 自主研发网络框架需要考虑哪些问题? 06:41 视频: 3-2 针对WebRTC实时音视频场景如何设计一套服务框架? 04:23 第4章 带你快速入门WebRTC技术 12 节|119分钟 展开 视频: 4-1 开发环境准备 13:18 视频: 4-2 WebRTC P2P通信流程 13:58 视频: 4-3 屏幕共享项目-用golang搭建静态资源服务 16:04 视频: 4-4 屏幕共享项目-获取证书和支持https访问 09:44 视频: 4-5 屏幕共享项目-设计UI界面 08:05 视频: 4-6 屏幕共享项目-获取屏幕共享视频流 08:07 视频: 4-7 屏幕共享项目-实现WebRTC推流 15:34 视频: 4-8 屏幕共享项目-实现WebRTC拉流(一) 05:34 视频: 4-9 屏幕共享项目-实现WebRTC拉流(二) 07:59 视频: 4-10 屏幕共享项目-实现WebRTC拉流(三) 05:53 视频: 4-11 屏幕共享项目-实现停止推流和拉流 08:37 视频: 4-12 本章小结 05:46 第5章 轻量级http开发框架的设计和实现 17 节|198分钟 展开 视频: 5-1 本章导学 01:57 视频: 5-2 WebRTC推流SDP交换模型 13:09 视频: 5-3 轻量级http基础框架设计和实现(一) 13:01 视频: 5-4 轻量级http基础框架设计和实现(二) 13:16 视频: 5-5 引入google的glog库 15:41 视频: 5-6 丰富和完善log组件功能 11:15 视频: 5-7 设计框架ComLog类 10:45 视频: 5-8 填充通用日志字段信息 12:14 视频: 5-9 添加统计耗时功能 11:23 视频: 5-10 添加conf组件 14:06 视频: 5-11 利用conf优化框架实现 06:09 视频: 5-12 支持https和静态资源访问 14:22 视频: 5-13 WebRTC推流端UI界面设计(一) 13:52 视频: 5-14 WebRTC推流端UI界面设计(二) 13:51 视频: 5-15 WebRTC推流信令请求的发送和处理 13:49 视频: 5-16 WebRTC推流信令请求参数解析和异常处理(一) 07:00 视频: 5-17 WebRTC推流信令请求参数解析和异常处理(二) 11:39 第6章 服务间RPC通信协议的设计和实现 6 节|68分钟 展开 视频: 6-1 什么是RPC 06:46 视频: 6-2 RPC通信协议设计 11:13 视频: 6-3 RPC Client接口设计和功能实现(一) 18:48 视频: 6-4 RPC Client接口设计和功能实现(二) 09:27 视频: 6-5 RPC Client负载均衡实现 14:51 视频: 6-6 本章小结 06:55 第7章 事件驱动网络编程框架--基础组件,掌握标准后台服务的核心构成 10 节|140分钟 展开 视频: 7-1 事件驱动编程基本概念及其特点介绍 16:36 视频: 7-2 音视频分发服务的工作模型设计 04:47 视频: 7-3 搭建音视频分发服务 16:17 视频: 7-4 添加conf组件 11:48 视频: 7-5 解析YAML格式的配置文件 13:52 视频: 7-6 添加log组件(一) 20:41 视频: 7-7 添加log组件(二) 18:20 视频: 7-8 实现log异步写入文件(一) 12:35 视频: 7-9 实现log异步写入文件(二) 18:24 视频: 7-10 解决log写入文件失败的问题 05:52 第8章 事件驱动网络编程框架--事件循环,掌握事件循环的综合运用技巧 10 节|128分钟 展开 视频: 8-1 本章介绍和信令服务框架搭建 18:18 视频: 8-2 创建TCP Server 15:24 视频: 8-3 libev快速入门 08:36 视频: 8-4 封装EventLoop类 19:29 视频: 8-5 实现创建IO事件 10:41 视频: 8-6 实现启动IO事件 05:06 视频: 8-7 实现停止和删除IO事件 03:46 视频: 8-8 实现定时器事件 10:49 视频: 8-9 向TCP Server添加事件循环 13:33 视频: 8-10 启动和停止TCP Server 22:13 第9章 事件驱动网络编程框架--网络数据读写,掌握非阻塞网络IO的读写技术 13 节|180分钟 展开 视频: 9-1 创建SignalingWorker 11:09 视频: 9-2 完善SignalingWorker并进行管理 15:10 视频: 9-3 分发新连接给SignalingWorker进行处理 17:44 视频: 9-4 无锁队列的原理和实现 19:39 视频: 9-5 创建TcpConnection类 18:12 视频: 9-6 监听TcpConnection读事件 10:09 视频: 9-7 RPC客户端写入信令转发数据 09:10 视频: 9-8 从TCP连接读取协议头 13:17 视频: 9-9 从TCP连接读取消息体 22:01 视频: 9-10 处理TCP连接超时情况- 19:00 视频: 9-11 TCP连接资源清理 02:33 视频: 9-12 解析json格式的数据体 15:52 视频: 9-13 根据命令号处理解析后的数据 05:51 第10章 事件驱动网络编程框架--多Server协同工作,掌握多Server的协同处理技术 12 节|177分钟 展开 视频: 10-1 本章核心内容 02:44 视频: 10-2 创建RtcServer类 16:54 视频: 10-3 实现RtcServer的启动和停止 12:53 视频: 10-4 处理SignalingWorker发送的消息 10:37 视频: 10-5 创建RtcWorker类 13:49 视频: 10-6 实现RtcWorker的消息处理 15:59 视频: 10-7 分配请求给RtcWorker进行处理 20:57 视频: 10-8 RtcWorker返回响应结果 17:54 视频: 10-9 SignalingWorker构造响应包- 14:57 视频: 10-10 SignalingWorker发送响应包 21:28 视频: 10-11 信令服务读取响应结果 12:20 视频: 10-12 信令服务返回处理结果给客户端 15:40 第11章 其他场景如何使用框架提升开发效率呢? 2 节|13分钟 展开 视频: 11-1 长连接服务场景的运用解析 09:29 视频: 11-2 音视频实时分发服务场景的运用解析 02:41 第12章 课程回顾与总结 1 节|14分钟 展开 视频: 12-1 课程回顾与总结 13:30 本课程已完结
|