C/C++Linux服务器开发/高级架构师
文章平均质量分 95
本专栏知识点是通过零声教育的线上课学习,进行梳理总结写下文章,对c/c++linux课程感兴趣的读者,可以在腾讯课堂搜索零声教育,详细查看课程的服务。
cheems~
业精于勤,荒于嬉;行成于思,毁于随。
展开
-
C++文件服务器项目—项目总结与反向代理—7
组件介绍基本写完了,后续进行深入。原创 2022-09-12 01:45:00 · 1904 阅读 · 0 评论 -
C++文件服务器项目—数据库表设计 与 后端接口设计—6
到本文为止,该项目的前置知识已经写的差不多了。本文规划了数据库表的设计 和 后端与前端接口的设计,接下来就可以编写fastcgi程序进行运行了。原创 2022-09-12 01:00:00 · 1469 阅读 · 0 评论 -
C++文件服务器项目—Nginx+FastDFS插件—5
本文介绍了Nginx+FastDFS插件的安装流程以及文件上传下载的流程。原创 2022-09-08 23:21:46 · 2430 阅读 · 4 评论 -
C++文件服务器项目—FastCGI—4
本文重点介绍FastCGI的概念、如何编写FastCGI程序,以及nginx如何配合fastCGI使用。原创 2022-09-08 13:19:32 · 3330 阅读 · 5 评论 -
C++文件服务器项目—Nginx—3
本文重点介绍nginx的安装与配置,实现反向代理和负载均衡。原创 2022-09-07 10:17:12 · 2937 阅读 · 4 评论 -
C++文件服务器项目—Redis—2
本文简单介绍了一下redis以及`C接口的客户端库hiredis`的使用原创 2022-09-06 15:41:45 · 2735 阅读 · 0 评论 -
C++文件服务器项目—FastDFS—1
本文的核心重点是介绍FastDFS的概念、构成、配置文件、启动与上传下载的实现。后续将逐步介绍nginx,mysql,redis,fastcgi等内容。原创 2022-09-05 19:56:05 · 4437 阅读 · 3 评论 -
C++11异步操作future和aysnc 、function和bind
本文介绍异步操作future和aysnc 与 function和bind原创 2022-09-01 16:22:26 · 1789 阅读 · 3 评论 -
C++11多线程thread、互斥量、条件变量、原子变量
本文重点理解:线程thread、互斥量mutex、条件变量condition。原创 2022-08-31 22:50:14 · 2077 阅读 · 2 评论 -
C++lambda表达式
本文介绍c++ lambda的使用方法原创 2022-08-31 09:02:58 · 1809 阅读 · 2 评论 -
C++左值/右值、左值引用&/右值引用&&、移动语义move、完美转发forward
C++11 在性能上做了很大的改进,最大程度减少了内存移动和复制,通过右值引用、 forward、emplace 和一些无序容器我们可以大幅度改进程序性能。原创 2022-08-30 21:39:04 · 1447 阅读 · 1 评论 -
C++智能指针[ shared_ptr / unique_ptr / weak_ptr ]介绍与使用
本文介绍[ shared_ptr / unique_ptr / weak_ptr ]的使用,以及shared_ptr 引用计数和weak_ptr 弱引用计数。原创 2022-08-29 00:00:00 · 1335 阅读 · 1 评论 -
高效的数据压缩编码方式 Protobuf
本文介绍protobuf的编码原理以及不同序列化协议之间的对比。原创 2022-08-24 17:55:02 · 3982 阅读 · 1 评论 -
偷懒的网络框架libevent、libev框架介绍
本文对libevent的api进行深入的讲解,并剖析libevent的evbuffer源码。原创 2022-08-19 02:15:24 · 2843 阅读 · 1 评论 -
优雅的处理 accept= -1 出现errno = EMFILE 文件描述符达到上限 的问题
优雅的处理 accept= -1 出现errno = EMFILE 文件描述符达到上限 的问题原创 2022-08-18 01:36:46 · 2717 阅读 · 1 评论 -
手写内存泄漏检测组件
本文介绍内存泄漏检测的核心需求以及注意点,一共4个版本的代码层层迭代。原创 2022-08-16 14:50:19 · 2561 阅读 · 1 评论 -
手写死锁检测组件
本文将从0到1写一个死锁检测组件原创 2022-08-13 02:21:50 · 1463 阅读 · 2 评论 -
循环数组无锁队列的原理与实现
本文介绍基于循环数组的无锁队列的原理与实现。原创 2022-08-12 03:16:57 · 3188 阅读 · 1 评论 -
ZMQ无锁队列的原理与实现
本文介绍ZMQ无锁队列的原理与实现原创 2022-08-11 20:18:13 · 3651 阅读 · 2 评论 -
定时器方案之红黑树与最小堆、时间轮详解
定时器在后端服务器开发过程中,是非常重要的一个组件,因为不可避免的会有许多延时任务需要被处理。那么到底该如何来组织大量的定时任务呢?原创 2022-08-09 15:11:36 · 2714 阅读 · 1 评论 -
手把手教你纯c实现异常捕获try-catch组件
本文用纯c的代码,实现异常捕获try-catch组件。阅读本文需要时刻牢记setjmp和longjmp的对应关系。原创 2022-08-04 22:41:13 · 3237 阅读 · 5 评论 -
CPU的亲缘性affinity
本文简单介绍一下CPU亲缘性以及实现方法。原创 2022-08-04 16:05:18 · 1634 阅读 · 1 评论 -
互斥锁、读写锁、自旋锁,以及原子操作指令xaddl、cmpxchg的使用场景剖析
本文介绍锁,原子操作与临界资源与的使用场景。原创 2022-08-03 18:33:03 · 2913 阅读 · 1 评论 -
Linux线程私有数据Thread-specific Data(TSD) 详解
Linux线程私有数据Thread-specific Data(TSD) 详解。本文将详细介绍pthread_key的用法以及pthread_key的原理。pthread_key在《ntyco协程》中,以及后续文章《try catch的实现》都有用到。跟我一起学习的读者务必搞懂原理。......原创 2022-08-02 22:00:58 · 3997 阅读 · 2 评论 -
C语言volatile关键字、内嵌汇编volatile与编译器的爱恨情仇
本文将详细介绍 C语言volatile与编译器的爱恨情仇,附带介绍一下内嵌汇编volatile的作用;不介绍volatile的原理。注意,本文口语描述的volatile默认是C语言volatile关键字。原创 2022-08-01 23:44:36 · 2870 阅读 · 2 评论 -
图文结合,手把手教你ubuntu18-live-server-amd64服务器版的安装、配置静态ip以及换源
本文介绍ubuntu18的安装,配置静态ip与dns,换源。原创 2022-07-29 21:15:32 · 1078 阅读 · 1 评论 -
mysql连接池的实现
本文介绍mysql连接池的实现。我记得go提供的原生sql包里面就是用的连接池,重在理解连接池的概念即可。原创 2022-07-29 20:25:21 · 1459 阅读 · 1 评论 -
异步请求池的实现
本文详细介绍异步请求池的实现过程,并使用DNS服务来测试异步请求池的性能。原创 2022-07-29 01:52:36 · 1434 阅读 · 1 评论 -
图文结合纯c手写内存池
本文从零到一,手把手实现一个内存池。原创 2022-07-27 15:18:02 · 3533 阅读 · 20 评论 -
纯c手写线程池
本文介绍线程池的作用、线程池的应用场景、线程池的工作原理、代码实现线程池以及与nginx的线程池对比分析。原创 2022-07-25 20:27:58 · 2920 阅读 · 5 评论 -
epoll的实现原理
本文以四个方面介绍epoll的实现原理,1.epoll的数据结构;2.协议栈如何与epoll通信;3.epoll线程安全如何加锁;4.ET与LT的实现。原创 2022-07-23 15:36:47 · 4363 阅读 · 8 评论 -
一文带你秒懂 字节序(byte order),比特序(bit order),位域(bit field)
本文主要介绍比特序在大小端机器上的排布,以及网卡是如何收发比特的,文末简单介绍了位域的约定原创 2022-07-21 02:55:07 · 6591 阅读 · 10 评论 -
用户态协议栈设计实现udp,arp与icmp协议
内核里面已经有网络协议栈了,为什么还要实现一遍用户态协议栈呢,主要是站在一个设计者的角度,自己去尝试实现一个协议栈,那么对协议栈的理解会比较透彻,这不比背八股文强?原创 2022-07-19 19:13:24 · 678 阅读 · 5 评论 -
手把手教你ubuntu18.04安装netmap
今天本来想借助netmap来测试自己写的用户态协议栈,奈何netmap的安装过程实在太操蛋,搞了好久,那就前人踩坑,后人乘凉吧。原创 2022-07-19 01:42:34 · 887 阅读 · 0 评论 -
大端与小端概念、多字节之间与单字节多部分的大小端转换详解
本文主要介绍三个内容:1. 大端与小端概念 2. 多字节之间的大小端转换 3. 单字节多部分的大小端原创 2022-07-18 23:01:56 · 5601 阅读 · 0 评论 -
纯c协程框架NtyCo实现与原理
c++两个比较好的协程库libgo和libco,本文用纯c的代码实现一个协程ntyco。ntyco源码地址——>——>源码里面有注释,本文是对ntyco的整体做一个梳理。原创 2022-07-17 22:28:51 · 7976 阅读 · 5 评论 -
Posix API 与 网络协议栈 详细介绍
本文详细介绍 Posix API 与 网络协议栈 之间的关系;三次握手、数据传输、四次挥手的过程。上下文耦合性较高,不建议跳跃阅读。原创 2022-07-12 14:10:06 · 3493 阅读 · 7 评论 -
websocket协议介绍与基于reactor模型的websocket服务器实现
本文对websocket协议与参数进行详细的介绍,并基于reactor模型实现websocket服务器(websocket介绍,websocket是什么,websocket的优点,websocket应用场景,websocket协议剖析,握手协议,传输协议,参数介绍,大白话,基于reactor模型的websocket服务器,握手代码介绍,传输代码介绍,程序运行测试结果,完整代码)............原创 2022-07-10 11:07:50 · 1532 阅读 · 9 评论 -
基于reactor模型的http服务器
本文基于reactor模型的实现一个简单的http demo服务器,主要是为了学习基于reactor,http协议该如何封装,如何解耦业务,所以HTTP的内容只做简单介绍。原创 2022-07-08 19:31:32 · 1056 阅读 · 3 评论 -
Linux服务器百万并发实现与问题排查
实现一台服务器的百万并发,服务器支撑百万连接会出现哪些问题,如何排查与解决这些问题是本文的重点原创 2022-07-07 18:02:49 · 3333 阅读 · 3 评论