技术栈
muduo
Fan_558
7 个月前
运维
·
服务器
·
c++
·
高并发
·
muduo
004 仿muduo实现高性能服务器组件_Buffer模块与Socket模块的实现
🌈个人主页:Fan_558 🔥 系列专栏:仿muduo 🌹关注我💪🏻带你学更多知识这章将会向你介绍仿muduo高性能服务器组件的buffer模块与socket模块的实现
打完代码打篮球
7 个月前
网络
·
c++
·
muduo
【Muduo】网络库框架模型和各模块简介
Muduo是由陈硕大佬个人开发的C++网络库,最近在剖析其源码,在此做一些归纳整理。Muduo网络库的框架模型主要基于Reactor模式,这是一种用于处理多个I/O事件的高效并发模型。
吃我一个平底锅
7 个月前
开发语言
·
网络
·
c++
·
个人开发
·
muduo
[muduo网络库]——muduo库Thread类(剖析muduo网络库核心部分、设计思想)
接着之前我们[muduo网络库]——muduo库TimeStamp类(剖析muduo网络库核心部分、设计思想),我们接下来继续看muduo库中的Thread类。
吃我一个平底锅
7 个月前
服务器
·
开发语言
·
网络
·
c++
·
个人开发
·
muduo
[muduo网络库]——muduo库三大核心组件之 Poller/EpollPoller类(剖析muduo网络库核心部分、设计思想)
接着上文,[muduo网络库]——muduo库三大核心组件之Channel类(剖析muduo网络库核心部分、设计思想),本章我们来学习muduo网络库中第二大核心组件Poller/EpollPoller类。 先回顾一下三大核心组件之间的关系。 接着我们进入正题。
EricLing0529
9 个月前
c++
·
redis
·
qt
·
mysql
·
nginx
·
docker
·
muduo
[代码已开源]集群聊天服务器与客户端开发
服务器代码在https://gitee.com/ericling666/sponge,对应的客户端源代码在https://gitee.com/ericling666/spongeclient。
山间点烟雨
1 年前
linux
·
服务器
·
muduo
1. 使用poll或epoll创建echo服务器
此篇博客主要记录一种客户端实现方式,和两种使用poll或者epoll分别创建echo服务器的方式,具体可看代码注释:
山间点烟雨
1 年前
linux
·
服务器
·
muduo
2.面向对象编程风格
此博客记录如何以面向对象的方式进行编程,以及如何让线程和线程对象同时销毁
@新法
1 年前
服务器
·
网络
·
c++
·
后端
·
muduo
·
源码剖析
muduo源码剖析之TcpConnection连接管理
TcpConnection用于管理一个具体的 TCP 连接,比如消息的接收与发送,完成用户指定的连接回调 connectionCallback。
@新法
1 年前
linux
·
服务器
·
c语言
·
网络
·
后端
·
网络编程
·
muduo
muduo源码剖析之Acceptor监听类
Acceptor类用于创建套接字,设置套接字选项,调用socket()->bind()->listen()->accept()函数,接受连接,然后调用TcpServer设置的connect事件的回调。
@新法
1 年前
linux
·
服务器
·
c语言
·
c++
·
后端
·
1024程序员节
·
muduo
·
源码剖析
muduo源码剖析之EventLoop事件循环类
EventLoop.cc就相当于一个reactor,多线程之间的函数调用(用eventfd唤醒),epoll处理,超时队列处理,对channel的处理。运行loop的进程被称为IO线程,EventLoop提供了一些API确保相应函数在IO线程中调用,确保没有用互斥量保护的变量只能在IO线程中使用,也封装了超时队列的基本操作。
@新法
1 年前
linux
·
服务器
·
c++
·
后端
·
muduo
·
源码剖析
·
网络库
muduo源码剖析之AsyncLogging异步日志类
AsyncLogging是muduo的日志,程序如果直接让文件写日志可能会发生阻塞,muduo前端设计了2个BufferPtr,分别是currentBuffer_和nextBuffer_,还有一个存放BufferPtr的vector(buffers_)。