C++网络编程实战项目--Sinetlib网络库(1)——概述

本文介绍了C++实现的Sinetlib网络库,这是一个基于Reactor模式、适用于Linux的多线程网络库,包含异步日志和HTTP服务器。作者详细讲述了项目背景、开发环境、目录结构、编译和构建过程,旨在分享知识并开源给读者。
摘要由CSDN通过智能技术生成

前言

这个网络库是我一直想完成的一个个人项目,到现在也只能说完成了基础的一部分,还有很多功能没完成。因为想往linux c++后台方向发展,所以就打算实现一个网络库,来串联学到的知识,包括APUE、UNP、《Effevtive C++》等等可以说是该方向必看的书籍。暑假的时候我照着陈硕先生的Muduo网络库模仿了一个,学到了很多,但对很多细节不解,所以现在就想重新实现,同时也熟悉整个开发流程。

在这里我将会详细的讲解整个项目的实现,一来是对自己的一个总结,二来也相当于开源出来,以飨读者。当前由于水平所限,可能会有许多谬误之处,望读者多加包涵,并加以指出。

项目地址

如果觉得对你有所帮助,还望能点一下star给我个前进的动力!
silence1772/Sinetlib

简介

Sinetlib是一个仿照Muduo实现的基于Reactor模式的多线程网络库,附有异步日志,要求Linux 2.6以上内核版本。同时内嵌一个简洁HTTP服务器,可实现路由分发及静态资源访问。

  • 底层使用Epoll LT模式实现I/O复用,非阻塞I/O
  • 多线程、定时器依赖于c++11提供的std::thread、std::chrono库
  • Reactor模式,主线程accept请求后,使用Round Robin分发给线程池中线程处理
  • 基于小根堆的定时器管理队列
  • 双缓冲技术实现的异步日志
  • 使用智能指针及RAII机制管
  • 6
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值