本套教学主要包含以下内容:
1、HTTP服务器使用c++语言开发,vs2019编辑器。支持windows和linux。服务器主要用于游戏服务器后台,以及APP 应用后台增、删、查、改数据。
2、服务器使用多线程技术,以及使用线程池,有工作任务就及时处理,没有工作任务就处于休眠状态。线程之间通信使 用锁机制,主线程主要做新的连接统一管理,有新的连接统一派发通知各个工作线程处理,主线程撒也不干就主要做 分派工作。
3、本教程是一个干货教程,性能高效,支持上万,几十万高并发连接处理,教程中提供了c++客户端进行压力测试。 4、HTTP服务器支持静态以及动态解析。
5、支持上传下载。原理就是读写本地文件,加载到内存中发送给对端获取数据。
6、支持数据有protobuf,2进制,json,字符串以及自定义的数据格式。教程讲解了如何自己封装解析数据。可达到学以 致用,举一反三的效果。
7、c++连接mysql数据库,使用连接池技术,可以通过客户端查询、修改、增加、删除数据。
8、客户端支持C++客户端,主要学习了解HTTP客户端是如何封装的,以及做压力测试工具。
9、UE4客户端通过json,protobuf,binary来和服务器进行通信交互数据。
10、unity3d客户端也可以通过json,protobuf,binary来和服务器进行通信交互数据。
课程截图
课程信息
教学总长度20小时左右,使用软件:vs2019、vs2015、ue4.19、 unity2017。
交流答疑
对于课程内容相关的疑问,提供有交流群,不但可以在群里与同学交流,分享资料,与教程内容有关的技术问题还可以进入答疑专区寻求帮助。老师一般会在2个工作日内为您解答。
核心知识点
多线程技术,线程池
有工作任务及时处理,没有任务休眠。
使用线程锁机制
主线程统一派发任务给工作线程,安全处理数据。
搭建windows工程及搭建linux工程
处理机制完全一样,使用protobuf 二进制 json数据。
c++连接mysql
后台使用c++连接mysql数据库,连接池。
课程目录
第一章:HTTP工作原理
0101_Http工作原理
0102_Http特性
0103_请求报文组成1
0104_请求报文组成2
0105_响应报文组成
第二章:http服务器架构
0201_HTTP架构思想
0202_创建windows工程
0203_数据定义
0204_创建数据结构
0205_设置请求和响应API
0206_请求_响应buf工作原理
0207_定义HttpServer封装类
0208_初始化数据
0209_初始化socket
0210_工作线程
0211_主线程监听新的连接派发任务
0212_工作线程新的连接运行框架
0213_接包_粘包处理
0214_分割字符串
0215_解包
0216_解析请求体
0217_封包响应
0218_发送数据
0219_运行服务器
0220_网页访问_下载
第三章:linux架构
0301_linux工程
0302_linux启动服务器测试
第四章:http c++客户端
0401_新建客户端工程
0402_封装httpclient类
0403_初始化socket
0404_生产数据
0405_发送数据
0406_解析响应数据
0407_解析消息体
0408_服务器压力测试
第五章:支持protobuf
0501_protobuf测试
0502_支持中文
0503_protobuf客户端服务器通信测试
0504_linux安装protobuf
0505_linux下服务器客户端通信测试
第六章:支持二进制
0601_binary
第七章:支持json
0701_Json封装
0702_测试json使用
0703_linux_json使用
第八章:mysql数据库接入
0801_安装mysql
0802_安装mysql客户端
0803_mysql查询数据
0804_mysql更新数据
0805_linux测试mysql
第九章:上传下载
0901_上传资源
0902_下载资源
0903_Linux测试下载资源
第十章:UE4 HTTP客户端
1001_发送POST数据
1002_解析数据
1003_加入protobuf
1004_测试二进制数据
十一章:Unity3d HTTP客户端
1101_json数据连接测试
1102_二进制数据连接测试
多端支持
课程支持在ios以及Android端设备播放,您只需要登录各大手机应用平台,搜索“ABOUTCG学院”即可下载安装应用。
课程要求
本教学需要您对基础的3D概念和术语有一定的了解,比如Polygon(多边形),Edge(边),Face(面)Axis(轴向),Space(空间),Map (贴图) 等。