![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Server
haha and giraffe
一只努力的长颈鹿
展开
-
c++云风coroutine库解析
云风coroutine库是一个C语言实现的轻量级协程库,源码简洁易懂,可以说是了(ru)解(keng)协程原理的最好源码资源。我在之前的文章中,借助腾讯开源的libco,对C/C++的协程实现有了一个简单介绍,参考博客。其实libco和云风coroutine有很多相似的思想,只不过实现的方式不同而已,云风库只是提供了一种实现思路,并没有对hook进行处理,而libco则是工业级的协程库实现。通过...原创 2020-05-05 17:33:13 · 681 阅读 · 0 评论 -
Nginx基础流程与启动过程解析
最近在学习nginx源码,由于时间有限,主要看主体逻辑流程,事件模块,HTTP模块等重要模块。本章首先对nginx启动过程做详细分析。nginx架构设计理念nginx启动过程概述master进程worker进程...原创 2019-10-12 18:26:25 · 584 阅读 · 0 评论 -
muduo多线程异步日志分析
最近在看muduo的源码,对于其日志系统的实现颇为感兴趣,找了两三天好好研究了一下,本文记录一些所学到的知识。基础知识 日志是每个高性能服务器必备的组件,分为两种:诊断日志和交易日志。诊断日志,主要的作用是供开发人员和运维人员进行故障诊断和追踪,如果系统在运行过程中出现异常,也可以通过脚本语言对日志进行排查,muduo的日志系统就是属于这一类。交易日志主要是用来记录系统状态的...原创 2019-05-07 16:35:19 · 898 阅读 · 0 评论 -
muduo Reactor结构分析
muduo采用的是one Loop per Thread 的模式,即每个线程中有一个主循环,再配合着IO多路复用,即可实现在一个线程中同时监听多个fd。主要利用EventLoop{.h/.cc} Channel{.h/.cc} Epoll{.h/.cc}来实现Reactor模式。回顾Reactor事件处理模式 Reactor模式是了解高性能IO的最基础模式,其主要的思想是,...原创 2019-07-15 17:42:24 · 137 阅读 · 0 评论 -
初识Nginx
什么是Nginx Nginx是一个高性能Web服务器,其与Tomcat、Apache等服务器相比,拥有以下特点拥有响应快(单次请求获得更快响应) 高扩展性(模块之间的耦合度较低) 高并发(单机支持10万连接) 热部署(在不停止Nginx服务器的情况下升级Nginx) 跨平台Nginx的组成 Nginx有四个部分组成,分别是:Nginx二进制可执行文件,由各个模...原创 2019-06-23 10:59:22 · 94 阅读 · 0 评论 -
C++协程概述
本篇文章记录了,我在学习C/C++实现协程封装过程的新得体会,以及对协程的理解。一开始对知道“协程”这个概念实在go语言里面,很多资料对其的描述都是“轻量级的用户态线程”。 首先,用户态和内核态分别是程序在运行过程中的两种状态,如果线程在用户进程地址空间的状态下中执行程序,则称为用户态,一旦发生系统调用、中断、异常等事件,就会由用户态转换到内核态,进入到内核地址空间去执行函数(系...原创 2019-09-27 16:43:20 · 1746 阅读 · 0 评论