前言
闭关多日,仔细阅读了muduo的源码,有一点开窍的感觉,仿照着牛客上天线宝宝大佬的服务器写了一个C++11的网络库,并在上面跑了一个数独求解的HTTP服务器。
这篇博客记录一下这个项目的构建过程,也对这段时间的学习做一个总结。
github链接:https://github.com/Supredan/S1mpleServer
测试页:数独求解(跑在我买的服务器上,一旦我用服务器干别的事情就会宕机哈 -_-!)
项目简介
C++的服务器当然是要往高并发的方向上走,网上已经有很多开源的高性能网络库,如Libevent、muduo、handy、oatpp还有重量级选手Boost的ASIO、ACE等等。对于新手来说,前几个都是很好的学习对象,我先大体看了看Libevent,但是由于它用的是c,而我还是想锻炼一下C++的能力,所以重点看的其实是muduo。陈硕大佬的水平当然不用怀疑,赶快拜读了《Linux多线程服务端编程:使用muduo C++网络库》,只是我这个菜鸡看到满天飞的boost整个人都不好了。
当然现在最新版的muduo2.0已经用上了c++11,但是还是有一些boost残留在其中,而且muduo考虑到了方方面面,导致在书中写的5000行以内的网络库现在貌似已经不止5000行了。
所以我参考muduo和牛客网上的天线