Libevent C++高并发网络编程 基于libevent和线程池完成FTP服务器开发 课程总结

Libevent C++高并发网络编程
共74节 8466人在学 课程详情
课程目录
讨论留言
  • Libevent源码的跨平台编译和测试

    • 课程介绍
    • 课程介绍-学员学习收益和课程资料说明
    • windows平台编译libevent分析及环境安装和源码下载
    • 用vs2017编译zlib源码并完成编译批处理脚本
    • 用vs2017编译openssl源码并完成编译批处理脚本
    • libevent源码vs2017编译完成包含openssl模块
    • libevent集成zlib的测试程序配置修改和编译
    • libevent源码vs2017编译批处理脚本编写
    • libevent第一个vs2017的测试程序完成
    • libevent在linux环境编译源码并编写测试程序
  • Libevent原理和网络模型设置

    • 高并发网络模型select_epoll_iocp区别
    • libevent接口分析
    • libevent服务端接收连接的代码示例
    • libevent上下文属性配置和源码分析
    • 获取系统所支持的网络模型例如epoll_select
    • 配置特征_例如边缘触发_并判断是否生效event_config_require_features
    • 设置网络模型并显示当前应用的网络模型event_config_avoid_method
    • windows上使用iocp网络模型并测试
  • event事件处理原理和实战

    • event事件状态流程和API接口分析
    • event在linux下信号事件处理evsignal_add
    • event的定时器接口讲解和代码示例
    • event优化公用超时用双向队列替换二叉堆
    • 使用event的读取用户登录日志文件并监听文件更新
    • 使用event网络服务器的端口绑定和连接事件处理
    • 使用event网络服务器数据接收和响应并处理超时和资源清理
    • 使用event网络服务器测试epoll的边缘触发ET和LT
    • event循环函数原理分析event_base_loop
    • event循环函数和退出代码示例event_base_loopbreak
  • bufferevent缓冲I0

    • bufferevent基本原理缓冲水位分析
    • bufferevent代码演示服务器接收和发送数据
    • bufferevent超时事件处理和资源清理
    • bufferevent客户端连接服务器
    • bufferevent客户端发送文件并处理超时和断开事件
  • bufferevent、z1ib实现在过滤器中压缩和解压缩

    • bufferevent_filter过滤器接口分析
    • buffervent输入输出过滤器处理代码讲解
    • 用于zlib示例的evbuffer处理函数分析
    • zlib压缩和解压缩函数接口分析
    • bufferevent_filter过滤器示例完成服务端接收消息
    • bufferevent_filter完成过滤器客户端发送消息
    • 使用bufferevent的filter完成文件的发送和接收
    • 使用bufferevent的filter和zlib完成文件压缩和发送
    • 使用过滤器和zlib完成服务端接收压缩数据并解压存储
  • libevent的http接口实现服务器和客户端

    • http协议分析
    • libevent的evhttp接口分析
    • evhttp服务器代码示例完成http请求消息解析
    • evhttp读取本地网页响应浏览器请求
    • 完成http服务器支持图片文件下载和并能获取表单POST数据
    • http客户端程序完成uri解析端口_服务器_请求地址和GET变量
    • 完成http客户端的请求
    • 完成http的客户端接收的response并打印获取的网页
    • http客户端完成图片文件下载
    • 完成了http客户端的POST请求
  • 搭建基于libevent的C+跨平台线程池

    • 基于libevent的c++线程池原理详解_参考memcached
    • 创建好XThreadPool的单件模式代码
    • 使用c++11的thread完成XThread线程池
    • 完成线程的安装和跨平台管道激活事件处理
    • 完成线程池的线程分发和线程激活
    • 完成线程池的自定义任务和任务的线程分发
    • 完成想线程池线程中添加一个自定义任务并处理客户发送的数据
    • 完成线程池任务资源清理并移植到linux
  • 基于libevent和线程池完成FTP服务器开发

    • FTP协议详解和用到指令说明
    • 基于libevent的线程池FtpServer设计分析类图分析
    • 重构线程池测试代码添加ftp工厂类和ftp任务基类
    • 完成ftp指令注册处理框架搭建并完成用户登录事件
    • 完成ftp服务器的PWD获取当前路径指令处理
    • 解析PORT命令分析出数据通道的IP和端口
    • 完成数据通道架构调整解析LIST发送测试的目录数据
    • 解析LIST指令完成windows中目录列表的发送
    • 完成FTP协议中CWD和CDUP目录切换
    • 解析FTP协议中RETR完成文件下载功能
    • 解析FTP协议中STOR完成文件上传功能
    • 完成ftpserver的内存和资源清理
    • 基于libevent线程池的ftp项目完成移植到linux
    • 课程总结

反馈

播放页问题反馈
视频学习中有任何产品建议都可由此反
馈,我们将及时处理!

课时介绍

课程总结

课程介绍

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)平台开发移植

推荐课程

信息系统项目管理师自考笔记

李明 · 535人在学

python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

王先生 · 20794人在学

手把手搭建Java超市管理系统【附源码】(毕设)

汤小洋 · 4093人在学

Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

黄菊华 · 734人在学

基于SSM酒店管理系统(毕设)

小尼老师 · 794人在学

java项目实战之购物商城(java毕业设计)

Long · 5108人在学

手把手搭建Java求职招聘系统【附源码】(毕设)

汤小洋 · 1468人在学

Python Django 深度学习 小程序

钟翔 · 2249人在学

城管局门前三包管理系统+微信小程序(vue+springboot)

赖国荣 · 513人在学

Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

李杰 · 3870人在学

正在试验
后自动删除环境
课程实验
本次实验时间已到期 00:00:00

    订阅失败

    Libevent C++高并发网络编程
    Libevent C++高并发网络编程 ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    课件正在飞速打包中,请耐心等待几秒钟~

    视频问题反馈

    提交遇到的问题我们会尽快解决的 ~