订阅后:请点击此处观看视频课程
****-Libevent C++高并发网络编程-C/C++
学习有效期:永久观看
学习时长:1165分钟
学习计划:20天
难度:中
「口碑讲师带队学习,让你的问题不过夜」
讲师姓名:夏曹俊
CEO/董事长/总经理
讲师介绍:夏曹俊:南京捷帝科技有限公司创始人,南京大学计算机硕士毕业,有15年c++跨平台项目研发的经验,领导开发过大量的c++虚拟仿真,计算机视觉,嵌入式图像处理,云安全审计项目,比赛鹰眼系统,主编出版过《C++实训教程》,并同时熟悉php,c#,java,安卓项目研发。
☛点击立即跟老师学习☚
「你将学到什么?」
LIBEVENT:是一款事件驱动的网络开发包,由于采用C语言开发体积
小巧,跨平台,速度极快.课程中讲解分析 LIBEVENT原理,跨平台编译
事件1O、缓冲O处理。讲解HTTP服务端开发示例,HTTP客户端请求开
发示例,最后基于 LIBEVENTT创建线程池C++框架,并用此框架完成FTP
服务器的登录、目录访问、文件上传下载能功能。
开发环境
操作系统: windows1064位和 ubuntu18.0464位
Libevent版本:2.1.8
Windows开发工具:VS2017社区版
ubuntu开发工具:g++make
开发语言:C/C++
课程亮点
全称代码演示:课程中的每一行代码都会敲出来,并详解代码
实际案例展示:基于LIBEVENT实现线程池和HTTP和TP服务器
跨平台讲解:基于 WINDOWS、LNUX( UBUNTU18.04)平台开发移植
「课程学习目录」
| 第1章:Libevent源码的跨平台编译和测试 |
| 1.课程介绍 |
| 2.课程介绍-学员学习收益和课程资料说明 |
| 3.windows平台编译libevent分析及环境安装和源码下载 |
| 4.用vs2017编译zlib源码并完成编译批处理脚本 |
| 5.用vs2017编译openssl源码并完成编译批处理脚本 |
| 6.libevent源码vs2017编译完成包含openssl模块 |
| 7.libevent集成zlib的测试程序配置修改和编译 |
| 8.libevent源码vs2017编译批处理脚本编写 |
| 9.libevent第一个vs2017的测试程序完成 |
| 10.libevent在linux环境编译源码并编写测试程序 |
| 第2章: Libevent原理和网络模型设置 |
| 1.高并发网络模型select_epoll_iocp区别 |
| 2.libevent接口分析 |
| 3.libevent服务端接收连接的代码示例 |
| 4.libevent上下文属性配置和源码分析 |
| 5.获取系统所支持的网络模型例如epoll_select |
| 6.配置特征_例如边缘触发_并判断是否生效event_config_require_features |
| 7.设置网络模型并显示当前应用的网络模型event_config_avoid_method |
| 8.windows上使用iocp网络模型并测试 |
| 第3章: event事件处理原理和实战 |
| 1.event事件状态流程和API接口分析 |
| 2.event在linux下信号事件处理evsignal_add |
| 3.event的定时器接口讲解和代码示例 |
| 4.event优化公用超时用双向队列替换二叉堆 |
| 5.使用event的读取用户登录日志文件并监听文件更新 |
| 6.使用event网络服务器的端口绑定和连接事件处理 |
| 7.使用event网络服务器数据接收和响应并处理超时和资源清理 |
| 8.使用event网络服务器测试epoll的边缘触发ET和LT |
| 9.event循环函数原理分析event_base_loop |
| 10.event循环函数和退出代码示例event_base_loopbreak |
| 第4章: bufferevent缓冲I0 |
| 1.bufferevent基本原理缓冲水位分析 |
| 2.bufferevent代码演示服务器接收和发送数据 |
| 3.bufferevent超时事件处理和资源清理 |
| 4.bufferevent客户端连接服务器 |
| 5.bufferevent客户端发送文件并处理超时和断开事件 |
| 第5章: bufferevent、z1ib实现在过滤器中压缩和解压缩 |
| 1.bufferevent_filter过滤器接口分析 |
| 2.buffervent输入输出过滤器处理代码讲解 |
| 3.用于zlib示例的evbuffer处理函数分析 |
| 4.zlib压缩和解压缩函数接口分析 |
| 5.bufferevent_filter过滤器示例完成服务端接收消息 |
| 6.bufferevent_filter完成过滤器客户端发送消息 |
| 7.使用bufferevent的filter完成文件的发送和接收 |
| 8.使用bufferevent的filter和zlib完成文件压缩和发送 |
| 9.使用过滤器和zlib完成服务端接收压缩数据并解压存储 |
| 第6章:libevent的http接口实现服务器和客户端 |
| 1.http协议分析 |
| 2.libevent的evhttp接口分析 |
| 3.evhttp服务器代码示例完成http请求消息解析 |
| 4.evhttp读取本地网页响应浏览器请求 |
| 5.完成http服务器支持图片文件下载和并能获取表单POST数据 |
| 6.http客户端程序完成uri解析端口_服务器_请求地址和GET变量 |
| 7.完成http客户端的请求 |
| 8.完成http的客户端接收的response并打印获取的网页 |
| 9.http客户端完成图片文件下载 |
| 10.完成了http客户端的POST请求 |
| 第7章:搭建基于libevent的C+跨平台线程池 |
| 1.基于libevent的c++线程池原理详解_参考memcached |
| 2.创建好XThreadPool的单件模式代码 |
| 3.使用c++11的thread完成XThread线程池 |
| 4.完成线程的安装和跨平台管道**事件处理 |
| 5.完成线程池的线程分发和线程** |
| 6.完成线程池的自定义任务和任务的线程分发 |
| 7.完成想线程池线程中添加一个自定义任务并处理客户发送的数据 |
| 8.完成线程池任务资源清理并移植到linux |
| 第8章:基于libevent和线程池完成FTP服务器开发 |
| 1.FTP协议详解和用到指令说明 |
| 2.基于libevent的线程池FtpServer设计分析类图分析 |
| 3.重构线程池测试代码添加ftp工厂类和ftp任务基类 |
| 4.完成ftp指令注册处理框架搭建并完成用户登录事件 |
| 5.完成ftp服务器的PWD获取当前路径指令处理 |
| 6.解析PORT命令分析出数据通道的IP和端口 |
| 7.完成数据通道架构调整解析LIST发送测试的目录数据 |
| 8.解析LIST指令完成windows中目录列表的发送 |
| 9.完成FTP协议中CWD和CDUP目录切换 |
| 10.解析FTP协议中RETR完成文件下载功能 |
| 11.解析FTP协议中STOR完成文件上传功能 |
| 12.完成ftpserver的内存和资源清理 |
| 13.基于libevent线程池的ftp项目完成移植到linux |
| 14.课程总结 |
「7项超值权益,保障学习质量」
- 大咖讲解
技术专家系统讲解传授思路与实战。
- 答疑服务
专属社群随时沟通与讲师答疑,扫清学习障碍。
- 课程资料+课件
超实用资料,覆盖核心知识,关键技能,方便练习巩固。
- 常用实战
企业常见实战案例,带你掌握Python在工作中的不同运用场景。
- 大牛技术大会视频
2019Python开发者大会视频免费观看,送你一个近距离感受互联网大佬的机会。
- APP+PC随时随地学习
满足不同场景学习需求,不受空间、地域限制。
- 内推机会
CSDN联合大厂博客专家,为优秀学员推荐具有竞争力的工作机会 。
☛点击立即跟老师学习☚
「什么样的技术人适合学习?」
- 想进入技术行业,但是面对多门编程语言不知如何选择,0基础的你
- 掌握技术单一、冷门,迫切希望能够转型的你
- 想进入大厂,但是技术不够丰富,没有竞争力的你
「悉心打造精品好课,20天学到大牛3年项目经验」
【完善的技术体系】
技术成长循序渐进,帮助用户轻松掌握
掌握C/C++知识,扎实编码能力
【清晰的课程脉络】
浓缩大牛多年经验,全方位构建出系统化的技术知识脉络,同时注重实战操作。
【仿佛在大厂实习般的课程设计】
课程内容全面提升技术能力,系统学习大厂技术方法论,可复用在日后工作中。
☛点击立即跟老师学习☚
「你可以收获什么?」
学会跨平台编译( windows, linux) libevent及其依赖库源码;
学会 ilbevent的事件駆动和事件分发方式
学会 libeventa的事件10处理,并区分使用 select、epol、iocp等多路复用方式;
理解{ libevent事件处理流程和状态的转换