- 博客(175)
- 收藏
- 关注
原创 【项目设计】从零实现一个高并发内存池
当前项目是实现一个高并发的内存池,它的原型是 Google 的一个开源项目tcmalloc,tcmalloc 全称为 Thread-Caching Malloc,即线程缓存的 malloc,实现了高效的多线程内存管理,用于替代系统的内存分配相关的函数(malloc、free)。
2023-08-16 16:24:43
440
1
原创 【Linux】Reactor模式
本篇博客主要讲解了什么是 Reactor 模式、Reactor 模式的组件、Reactor 模式的工作流程以及基于 Reactor 模式的 TCP 服务器等等。
2023-08-12 10:29:11
467
2
原创 【Linux】带你深入了解多路转接
本篇博客主要讲解了多路转接之 select、poll 和 epoll,分析了它们的函数原型、优缺点和应用场景等。
2023-08-11 09:55:00
241
1
原创 【Linux】带你了解高级IO
本篇博客主要讲解了 IO 的基本概念、五种 IO 模型、高级 IO 的重要概念、其他高级 IO 以及非阻塞 IO 等等。
2023-08-09 15:59:22
376
1
原创 【Linux】网络层、数据链路层、DNS、ICMP协议、NAT技术
本篇博客详细讲解了网络层中的 IP 协议、数据链路层、ARP 协议、DNS 域名解析系统、ICMP 协议、NAT 技术以及代理服务器等等。
2023-08-09 15:10:09
760
1
原创 【项目设计】MySQL 连接池的设计
连接池是一个数据库连接的管理工具,旨在优化数据库连接的开启、关闭和复用,从而提高数据库访问性能和系统的并发处理能力。连接池在应用程序启动时预先创建一定数量的数据库连接,并将它们放入一个池中。当应用程序需要连接数据库时,从连接池中获取一个空闲的连接,使用完毕后再将连接归还给连接池,以便其他请求可以复用这个连接。这样一来,就避免了频繁地开启和关闭数据库连接的开销。
2023-07-30 23:07:22
811
22
原创 【Linux】TCP协议
本篇博客从 TCP 协议报头讲起,讲解了 TCP 协议的确认应答机制、窗口大小、六个标记位、连接管理机制、超时重传机制、流量控制、滑动窗口、拥塞控制、延迟应答、捎带应答、面向字节流、粘包问题等等。
2023-07-30 10:04:26
446
原创 【Linux】UDP协议
本篇博客主要讲解了端口号划分、知名端口号、nestat 和 pidof 指令、UDP 协议端格式、UDP 的特点、UDP 协议的使用注意事项以及基于 UDP 的应用层协议等等。
2023-07-30 07:56:02
815
原创 【Linux】HTTPS协议是如何保证数据安全的
本篇博客主要讲解了什么是HTTPS协议、什么是加密、为什么要加密、常见的加密方法、数据摘要、数据指纹、数字签名以及探讨了 HTTPS 的工作过程等等。
2023-07-30 07:41:09
328
原创 【MySQL】使用C语言连接
本篇博客主要讲解了 mysql 连接库的下载和安装、mysql 接口介绍以及实现了简易版的 mysql 客户端等等。
2023-07-30 07:35:15
544
原创 【MySQL】事务管理
本篇博客主要解决了什么是事务、为什么要有事务、事务的应用场景、事务的特征、事务的隔离级别、不同隔离级别的问题、Read View、版本链、RR 与 RC 的本质区别等等。
2023-07-29 23:01:53
254
原创 【MySQL】让你不再为 MySQL 基础困扰
本篇博客主要介绍了什么是数据库、数据库和文件的区别、主流的数据库、MySQL 的基本使用、服务器、数据库和表的关系、数据的逻辑存储和物理存储、MySQL 的架构、SQL 语言的分类以及存储引擎等等。
2023-05-17 09:00:00
218
原创 【Linux】一文读懂HTTP协议:从原理到应用
本篇博客主要讲解了什么是HTTP协议、认识URL、HTTP协议格式、请求方法、状态码、常见报头、主要特征以及常见的抓包工具和抓包工具的原理等等。
2023-04-25 08:39:58
1580
34
原创 【C++】关于多线程,你应该知道这些
本篇博客主要讲解了多线程相关的类 thread、mutex、atomic 和 condition_variable、线程安全的智能指针和单例模式等。
2023-04-13 08:01:31
1023
30
原创 【Linux】揭开套接字编程的神秘面纱(下)
本篇博客基于 TCP 协议编写了单进程版、多进程版、多线程版、线程池版的 echo 服务器以及深入剖析地址转换函数等。
2023-04-10 11:53:50
1551
37
原创 【Linux】揭开套接字编程的神秘面纱(上)
本篇博客主要讲解了什么是源IP地址和目的IP地址、什么是端口号、PID和端口号的区别、什么是套接字、简单认识UDP和TCP协议、什么是网络字节序、套接字的分类、数据结构和常见API以及使用UDP协议来进行编写服务端和客户端等。
2023-04-06 08:30:00
1375
55
原创 【Linux】一文带你探究网络世界的基石
本篇博客主要介绍了什么是局域网和广域网、什么是协议、协议分层、OSI七层模型、TCP/IP五层模型、局域网通信原理、数据包封装和分用、不同局域网的通信原理、什么是MAC地址和IP地址、MAC地址和IP地址的区别以及IPv4地址不足问题和IPv6推广缓慢问题等等。
2023-04-02 08:00:00
3524
52
原创 【Linux】线程池 | 线程安全的单例模式 | STL、智能指针与线程安全 | 读者写者问题
本篇博客主要讲解了什么是线程池、线程池的优点、应用场景和实现、日志功能的实现以及线程安全的单例模式、悲观锁、乐观锁、自旋锁、读写锁和读者写者问题以及 STL、智能指针与线程安全等等。
2023-03-30 22:21:11
614
36
原创 【Linux】POSIX信号量 | 基于环形队列的生产者消费者模型
本篇博客主要讲解了信号量、信号量的相关函数以及基于环形队列的生产者消费者模型等。
2023-03-29 07:30:00
585
18
原创 【Linux】基于阻塞队列的生产者消费者模型
本篇博客主要讲解了为什么要使用生产者消费者模型、基于阻塞队列的生产者和消费者模型以及 RAII 的加锁方式等等。
2023-03-24 08:00:00
890
3
原创 【Linux】进程信号
本篇博客主要讲解了什么是信号、信号如何产生、阻塞信号、捕捉信号、可重入函数以及 volatile 关键字和 SIGCHLD 信号等。
2023-03-03 15:41:01
3938
88
原创 【Linux】system V共享内存 | 消息队列 | 信号量
本篇博客主要讲解了什么是共享内存、共享内存的原理、用共享内存实现客户端和服务端的通信、什么是消息队列、消息量以及进程互斥等等。
2023-02-25 08:00:00
2193
24
原创 【Linux】进程间通信介绍 | 管道
本篇博客主要讲解了什么是进程间通信、进程间通信的目的、什么是管道、管道的原理、匿名管道、管道的特点、命名管道等等。
2023-02-25 07:45:00
2081
29
原创 【C++】STL 之空间配置器 | STL 总结
本篇博客主要讲解了 STL 的空间配置器、定长内存池与 malloc 的效率对比以及 STL 六大组件内在联系的总结等等。
2023-02-23 08:15:00
2372
40
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人