高并发服务
文章平均质量分 70
HjasnJH
这个作者很懒,什么都没留下…
展开
-
替换ptmalloc,使用tcmalloc和jemalloc
c++原创 2022-08-01 00:28:01 · 688 阅读 · 1 评论 -
nginx slab内存管理机制
slab内存管理原创 2022-07-30 23:10:15 · 882 阅读 · 0 评论 -
nginx进程间同步机制-互斥锁
nginx 多进程同步机制原创 2022-07-27 01:24:58 · 604 阅读 · 0 评论 -
nginx 的进程建通信机制-共享内存/channel/信号
nginx 进程间通信原创 2022-07-26 23:46:02 · 645 阅读 · 0 评论 -
阻塞,非阻塞,同步,异步的区别
开发中,经常会听到同步IO,异步IO,阻塞IO,非阻塞IO然而很多人经常混淆认为,同步IO就一定是阻塞的。其实他们是一个不同的概念。阻塞和非阻塞的区分:IO系统调用,如果进行系统调用,进程会陷入内核态直到系统调用完成为阻塞IO,进程无论调用是否成功,会直接返回为非阻塞IO。同步IO: 指的是IO操作的完成是在当前执行流程下同步完成的异步IO:指的是调用返回后,IO操作并没有完成,而是由某个线程负责真正的IO操作,完成后通知原来的线程。所以有,同步阻塞IO, 同步非阻塞IO,异步非阻塞原创 2022-05-30 01:08:49 · 80 阅读 · 0 评论 -
高并发服务器-无锁队列实现2(基于RingBuffer 支持多读多写)c++
RingBuffer 无锁队列实现。原创 2022-05-25 02:21:29 · 1583 阅读 · 3 评论 -
高并发服务器-无锁队列实现1 (基于ZMQ 1读1写) C++
无锁队列实现,1读1写锁引起的问题: Cache损坏(Cache trashing) 在同步机制上的争抢队列 动态内存分配 Cache损坏(Cache trashing) 无锁队列在保存和恢复上下⽂的过程中还隐藏了额外的开销:Cache中的数据会失效,因为它缓存的是将被换出任务的数据,这些数据对于新换进的任务是没⽤的。处理器的运⾏速度⽐主存快N倍,所以⼤量的处理器时间被浪费在处理器与主存的数据传输上。这就是在处理器和主存之间引⼊Cache的原因。Cache是⼀种速度更快但容量原创 2022-05-24 12:38:06 · 301 阅读 · 0 评论