E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
muduo
muduo
中的reactor
muduo
使用的是reactor模式,关于
muduo
的其他内容不做过多赘述。此文作为自己阅读
muduo
源码的笔记,目的在于用直白的语言记录阅读时的理解。
muduo
网络库,分为两个部分。
犭虫彳亍口苗
·
2023-03-27 17:18
如何学会网络编程
经过工作一年的积累与最近
muduo
网络库在业务中的实际应用。总算把网络编程入门了,并且基本看完了整个
muduo
库,收获颇多。
三妖寺方丈
·
2023-03-24 21:33
Muduo
_Day7(Connector,TcpClient)
Connector类Connector只负责建立socket连接,不负责创建TcpConnection对象,它的newConnectionCallback回调的参数是socket文件描述符.
Muduo
中的
angel_贝贝
·
2023-03-22 21:47
muduo
这本书该如何看
muduo
库有作者专门的一本书来讲。总体来说,这本书需要一定的c++功底,网络编程的基本功底,才能看懂,否则读起来很吃力,很乏味。应该说是中等程序员的书目。
三妖寺方丈
·
2023-03-22 10:25
Muduo
_Day 3(网络库)
多线程与并发服务器:(1)循环式(iterative)服务器:每处理一次请求,就关闭一次,使用的是TCP短连接,只使用单线程模式,没法充分发挥多核CPU的优势.(2)惊群现象:当一个客户端连接过来时,有多个子进程处于accept状态,多个进程都有返回,但只有一个进程返回成功.TCP网络编程的本质是处理三个半事件:连接建立:服务器accept(被动)接受连接,客户端connect(主动)发起连接连接
angel_贝贝
·
2023-03-16 05:05
Muduo
_Day5(EventLoopThread和EventLoopThreadpoll)
EventLoopThread类一个程序可以有不止一个IO线程,IO线程也不一定是主线程,我们可以在任何一个线程创建并运行Eventloop.且任何一个线程只要创建并运行了Eventloop,就称该线程为IO线程.EventloopThread类封装了IO线程,该类创建了一个线程,并在线程函数中创建了一个Eventloop对象,然后将其地址赋值给loop_成员变量,然后notify()条件变量,唤
angel_贝贝
·
2023-03-13 05:56
C++多线程多进程服务器
muduo
函数查询表(一)
本文记录下本人在写服务器过程中遇到的一些相关函数,其具体详解参考给定的参考网址,本文只是做个记录,便于以后再次查询相关函数:1.(setsockopt(listen_fd,SOL_SOCKET,SO_REUSEADDR,&optval,sizeof(optval))==-1)允许重用地址!!!消除bind时"Addressalreadyinuse"错误http://www.cnblogs.com/
追捕的风
·
2023-02-05 10:12
c++服务器
c++
服务器
多线程
多进程
Linux
如何基于protobuf实现一个极简版的RPC(转载)
基于protobuf的RPC可以说是五花八门,其中不乏非常优秀的代码例如brpc,
muduo
-rpc等。protobuf实现了序列化部分,并且预留了RPC接口,但是没有实现网络交互的部分。
xupeng1644
·
2023-02-03 15:15
C/C++
protobuf
rpc
Muduo
_Day 2(
muduo
基础库)
(1)父子进程之间的继承:fork()会产生一个和父进程完全相同的子进程,但子进程在此后会exec系统调用,出于效率考虑,linux中引入了“写时拷贝”copyonwrite技术,也就是只有进程空间的各段的内容要发生变化时,才会将父进程的内容复制一份给子进程。在fork之后exec之前两个进程用的是相同的物理空间(内存区),子进程的代码段、数据段、堆栈都是指向父进程的物理空间,也就是说,两者的虚拟
angel_贝贝
·
2023-01-26 17:16
看
muduo
视频记录
自2021/7/15开始1.大并发服务器开发课程介绍如果任务服务器的任务相同,就应该让应用服务器自动去取任务,这样比较公平。任务服务器不应该只有一台,也要做负载均衡最终要做到:全面解耦合,哪个层面性能不足,就在那个层面增加服务器。应用服务器的负载均衡增加一个任务服务器来实现,任务服务器可以监视应用服务器的负载,CPU高、I0高、并发高、内存换页高查询到这些信息之后,选取负载最低的服务器分配任务。应
ZWRMFW
·
2023-01-26 11:25
谈谈
muduo
库的销毁连接对象——C++程序内存管理和线程安全的极致体现
removeConnectionTcpServer::removeConnectionInLoopTcpConnection::connectDestroyed总结一点其他想法前言网络编程的连接断开一向比连接建立复杂的多,这一点在陈硕写的
muduo
_夕
·
2022-12-31 13:46
c++
网络
muduo
库
前言这个假期跟着教学视频手写了
muduo
库,该
muduo
库是经过改造,不依赖boost库,用C++11重构。手写
muduo
库的过程虽然有些枯燥,但学会的东西确实也很多。
蜗牛不慵懒
·
2022-12-02 22:37
笔记
c++
后端
muduo
网络库设计与实现(二)
muduo
网络库设计与实现(一)文章目录
muduo
网络库设计与实现(一)baseInetAddressSocket单线程网络库AcceptorTcpServerTcpConnectionBufferechoserver
Cyril_Xu
·
2022-12-02 22:36
muduo
多机协作网络编程示例一:单词计数及排序
去年我写了《
Muduo
网络编程示例》系列文章,这些文章已经收入《Linux多线程服务端编程:使用
muduo
C++网络库》一书。
吴新强
·
2022-12-02 22:06
C#
hash表的应用
网络
国庆弯道超车(手写
Muduo
库剖析核心代码及编程思想)
手写
muduo
库前言Multi-Reactor的三大组件Channel类poller/EpollpollerEventLoopThread&ThreadEventLoop&ThreadEventPoolAcceptor
一个山里的少年
·
2022-12-02 22:35
网络
tcp/ip
服务器
第三方库——
muduo
网络库的使用
目录
muduo
网络库介绍使用
muduo
进行server端编程参考文献
muduo
网络库介绍我觉得我的介绍肯定是没有陈硕大神介绍的完整,所以我这里直接贴上陈硕的原文链接:
muduo
网络库在这里,我将只讨论
muduo
shenmingik
·
2022-12-02 22:35
#
网络
epoll
muduo
网络库学习(1)
muduo
网络库学习(1)文章目录
muduo
网络库学习(1)前言一、
muduo
是什么?二、代码结构1.base库2.net库3.附属库二、网络库结构总结前言本章节主要介绍
muduo
网络库的整体架构!
躺又躺不平卷又卷不动
·
2022-12-02 22:04
C++后端
网络
学习
手写moduo网络库项目
手写moduo网络库项目剖析
muduo
网络库核心代码阻塞、非阻塞、同步、异步Unix/Linux上的五种IO模型阻塞blocking非阻塞non-blockingIO复用(IOmultiplexing)
伽男
·
2022-12-02 22:04
项目
#
手写moduo网络库项目
linux
485-手写C++
muduo
库(TcpConnection)
Buffer封装是一个缓冲区8字节长度(解决粘包问题)+读数据+写数据根据下标进行读或者写3个成员变量:数组,数据可读的下标,数据可写的下标
-林泽宇
·
2022-12-02 22:30
C++11重写muduo网络库
c++
487-手写C++
muduo
库的梳理总结
手写C++
muduo
库的梳理总结mainReactor就是我们代码中的mainloop(baseloop),subReactor是我们代码中的工作线程进行读写事件的处理,read是底层做的,decode
-林泽宇
·
2022-12-02 22:30
C++11重写muduo网络库
c++
linux
484-手写C++
muduo
库(TcpServer)
Callbacks.h#pragmaonce#include#includeclassBuffer
-林泽宇
·
2022-12-02 22:30
C++11重写muduo网络库
c++
477-手写C++
muduo
库(Cmake,nocopyable,logger,Timestamp,InetAddress)
我们创建的项目工程名:my
muduo
我们在my
muduo
下创建CMakeLists.txtcmake_minimum_required(VERSION2.5)project(my
muduo
)#cmake
-林泽宇
·
2022-12-02 22:29
C++11重写muduo网络库
c++
linux
学习一下
muduo
网络库(二)
muduo
中Reactor设计模式的实现------eventloop
muduo
中的eventloop采用oneeventloopperthread设计思想,并明确每个eventloop中注册的回调函数都在
西格玛利翁
·
2022-12-02 22:59
源码学习
muduo
muduo源码学习
学习
muduo
时对enable_shared_from_this的思考
在学习
muduo
时,看到C++11的特性,在TcpConnection类的声明中,继承了enable_shared_from_this这个模板类,部分代码片段如下:classTcpConnection:
晨哥是个好演员
·
2022-11-15 11:16
muduo网络库
c++
网络库
linux命名管道fifo通信示例
按照陈硕所著的《Linux多线程服务端编程:使用
muduo
C
金色熊族
·
2022-11-03 09:38
Linux
linux
fatal error: No such file or directory头文件明明有,却找不到Qt
比如:main.cpp#include"
muduo
/net/httpserver/httprequest.h"intmain(){//.......}httprequest.h#ifndefHTTPREQUEST_H
泰勒朗斯
·
2022-11-02 19:14
笔记
muduo
补充
muduo
简要梳理每个处理线程最大有一个EventLoop(启动后进入loop循环-1监听select事件,2处理select事件)。
鲜花盔甲的主人
·
2022-10-13 14:49
C++
网络
网络
tcp/ip
开发一个 c++ 网络库
zbluenet(蓝网)跨平台c++服务器网络库抽空研究了一下
muduo
网络库,看了一些github上优秀的源码,自己实现了一个c++网络库,基本功能已经完成,还在开发中github地址:zbluenet-cpp1
小小玮
·
2022-10-10 14:53
c++
游戏服务器设计
网络传输
c++
C++ 网络编程 自学 01
网络框架:libvent、ace、
muduo
socket编程socket是一套用于不同主机间通信的API,工作在TCP/IP协议栈之上,中文“套接字”API就是应用程序编程接口通常接口为IP地址和端口IP
Gigi Princess
·
2022-09-15 13:54
C++开发快速记忆合集
网络编程
网络
服务器
tcp/ip
udp
C++11重写
muduo
网络库——预备知识
一、阻塞、非阻塞、同步、异步1、典型的一次I/O的两个阶段是什么?1)数据准备和数据读写我们作为服务器,接收客户端的请求,得先监听客户端有没有数据过来,这是一个状态,还有就是数据过来了该怎么去读写,这又是一个状态。实际上,阻塞,非阻塞,同步,异步,分别是这两种状态下的体系。2、网络I/O阶段1:数据准备数据准备:根据系统IO操作的就绪状态,分为阻塞:让调用I/O的线程进入阻塞状态,数据准备好了就唤
贪睡的蜗牛
·
2022-09-12 10:41
C++11重写muduo网络库
网络
c++
linux
服务器
C++async、future、packaged_task、promise的使用
对线程又有了深刻的认识,以前写的线程基本都是同步线程,而自从学习了
muduo
网络库更知道要用异步的思想去处理问题,因为有时候同步是必须的,但有的时候同步会造成本不必要的浪费,所以也适当的用异步操作来代替同步操作
dxgzg
·
2022-06-16 00:48
C++并发
C++
c++
多线程
muduo
CMakeLists.txt注释
cmake_minimum_required(VERSION2.6)#使用的版本是CMake>=2.6project(
muduo
CCXX)#是C和C++的工程项目enable_testing()#开启测试
骑着螃蟹赶飞机
·
2022-05-22 10:19
muduo
-Buffer
tcpConnectionclassTcpConnection:NonCopyable,publicenable_shared_from_this{private:enumStateE{k_disconnected,k_connecting,//正在连接k_connected,//已连接k_disconnecting,};public:TcpConnection(EventLoop*loop,co
无敌的神龙战士
·
2022-05-16 10:51
#
muduo源码解析
c++
muduo
源码分析之TcpServer模块详细介绍
这次我们开始
muduo
源代码的实际编写,首先我们知道
muduo
是LT模式,Reactor模式,下图为Reactor模式的流程图[来源1]然后我们来看下
muduo
的整体架构[来源1]首先
muduo
有一个主反应堆
·
2022-04-25 16:49
muduo
源码分析之TcpServer模块
这次我们开始
muduo
源代码的实际编写,首先我们知道
muduo
是LT模式,Reactor模式,下图为Reactor模式的流程图[来源1]然后我们来看下
muduo
的整体架构[来源1]首先
muduo
有一个主反应堆
·
2022-04-24 21:24
golang
muduo
源码分析之回调模块
这次我们主要来说说
muduo
库中大量使用的回调机制。
·
2022-04-24 21:54
golang
C++深入刨析
muduo
中的抽象类Poller
Poller,引用不同的派生类对象(PollPoller或EpollPoller),调用同名覆盖方法,就可以很方便地去扩展不同的I/O复用Poller.h源码#include#include#include"
muduo
·
2022-04-24 18:45
muduo
源码分析之Buffer
这一次我们来分析下
muduo
中Buffer的作用,我们知道,当我们客户端向服务器发送数据时候,服务器就会读取我们发送的数据,然后进行一系列处理,然后再发送到其他地方,在这里我们想象一下最简单的EchoServer
·
2022-04-22 15:46
golang
muduo
源码分析之
muduo
简单运用
今天不先实现
muduo
项目,我们先来看下
muduo
库的基本使用,只有了解了如何用,才能在写代码的时候知道自己写的找个函数是干嘛的,实际上是怎么使用的这个函数。
·
2022-04-22 15:13
golang
muduo
项目介绍
在上一个集群聊天服务器项目中,我使用了
muduo
作为网络库,然后主要实现了业务逻辑等,所以为了深入网络库的代码和实现,我跟着一位老师的代码去实现了
muduo
库的基本原理和作用,当然只是实现了主体的代码,
·
2022-04-21 15:16
golang
muduo
_base时间戳相关模块
使用的
muduo
源码为2.0.2版本。
muduo
_base时间戳相关代码先从
muduo
_base下的UTC时间戳文件开始学习。
·
2022-01-12 16:20
后端c++
c++命名对象和匿名对象的解析
最近在看
muduo
库,对里面的日志库比较感兴趣,于是看到了以下的语句:刚看到这些语句时,和平时遇到日志打印的语句不太一样,很疑惑这样一条语句是怎么把日志打印出来的。
·
2021-10-28 21:37
666-集群聊天服务器项目总结
这个项目分为4个模块,首先,第一个模块是网络模块,我通过深入剖析
muduo
网络库的核心组件,采用C++11重写
muduo
库的核心组件,将依赖于boost库的技术点转化为C++11的知
-林泽宇
·
2021-10-09 09:26
C++实现集群聊天服务器
数据库
nginx
redis
fastcgi 异步实现和协程实现比较
cocgi是使用腾讯开源库libco实现的协程模式的fastcgi.mucgi是使用
muduo
开源库实现的异步模式的fastcgi.两者针对的场景略有不同。
肚腩照明月
·
2021-06-24 09:14
基于C++11重写
muduo
库
邮箱:
[email protected]
源码:基于C++11重写
muduo
库如有转载,请标明出处,谢谢!
wtxuebc
·
2021-05-28 17:13
muduo
muduo
源码学习(二) 实现TCP网络库(上)
概述
muduo
在实现非阻塞TCP连接时,对socket相关的内容进行了非常详尽的封装,本文梳理下
muduo
中AcceptorInetAddressSocketSocketsOps四个类的相关实现。
荏苒何从cc
·
2021-05-18 16:21
剖析
muduo
网络库核心代码,重写
muduo
库
项目简介模拟
muduo
库实现nonnon-blocking+IO-multiplexing+loop线程模型的高并发TCP服务器模型。
thou
·
2021-03-12 15:19
网络
云原生中间件的下一站
作者:于雨于雨(github@AlexStocks),dubbogo社区负责人,一个有十年服务端基础架构和中间件研发一线工作经验的程序员,陆续参与和改进过Redis/Pika/
Muduo
/dubbo-go
·
2021-02-09 21:14
云原生中间件的下一站
作者:于雨于雨(github@AlexStocks),dubbogo社区负责人,一个有十年服务端基础架构和中间件研发一线工作经验的程序员,陆续参与和改进过Redis/Pika/
Muduo
/dubbo-go
·
2021-02-09 21:31
《Linux多线程服务端编程:使用
muduo
C++网络库》学习笔记
文章目录第1章线程安全的对象生命期管理1.1当析构函数遇到多线程1.1.1线程安全的定义1.1.3线程安全实例1.2对象的创建很简单1.3销毁很难1.4线程安全的Observer有多难1.6神器shared_ptr/weak_ptr1.7C++内存问题及其对策1.8应用到Observer上1.9shared_ptr的线程安全1.10shared_ptr技术与陷阱意外延长对象的生命期函数参数析构动作
Owl丶
·
2021-02-02 21:34
C++
计算机网络
读书笔记
c++
linux
服务器
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他