C++ tinyWebServer [零]

Posted 高性能linux后台开发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ tinyWebServer [零]相关的知识,希望对你有一定的参考价值。

学习linux和后台开发需要注重实战,可以根据这个项目练下手。


代码基础是根据游双书上的代码,修改了一些东西,他的代码不能发送大文件,writev也有点问题(不清楚有没有发布fix)。


目前功能,访问文件,图片。写好html页面的话自然也是可以访问的。小伙伴们可以用来练下手。

用到的技术: epoll,基础socket,线程,线程池,http解析。

书里只是简单附上了代码,并没有过多讲解。知识面也比较广,有些地方并没有说明,初学者可能会看的稀里糊涂,所以我后续会陆续讲解整个项目。

大致分以下部分,基础socket使用,pthread线程和线程池使用,epoll多路复用,reactor和http的理论知识以及C/C++解析的大致流程,vscode 远程工具的使用及问题分析。

把代码开源到了github。

https://github.com/hqingLau/tinyWebServer

以下是README:

Tiny web server for study usage. Put files in /var/www/html.You can learn threadpool, epoll, http parsing... from here.

Example:

visit a.html in browser.

ref code: 《Linux高性能服务器编程》

Fixed some problems, such as big file transfering, writev error.



以上是关于C++ tinyWebServer [零]的主要内容,如果未能解决你的问题,请参考以下文章

C++编程书籍推荐:零基础入门书籍,学C++看它们就够了!

c++ c风格零初始化0

C++:捕获除以零错误

为啥 int 数组在 C++ 中未初始化为零?

C++:在优化结束时计数零

C++编程书籍推荐:零基础入门书籍,学C++看它们就够了!