nginx笔记
Ardo_Ye
这个作者很懒,什么都没留下…
展开
-
nginx多进程锁的实现
Nginx workers 要获取新的请求,需要互斥的得到监听端口的socket句柄。nginx通过自己实现的锁来实现进程间互斥. 1, 原子操作 原子操作就是可以在执行这几个操作的时候不会被其他指令打断,可以实现排他的内存访问,实际是在内存总线层次的临界区操作。 Nginx 使用gcc的原子操作: ngx_atomic.h: #elif (NGX_HAVE_GCC_ATOM原创 2016-04-17 10:11:13 · 675 阅读 · 0 评论 -
nginx 红黑树实现
主要参考: https://zh.wikipedia.org/wiki/%E7%BA%A2%E9%BB%91%E6%A0%91 树=>有序树=> 二叉树=>二叉查找树=>平衡树 =>红黑树 红黑树是有序平衡的二叉查找树,所以插入删除操作需要调整,以保持红黑树的特性: 节点是红色或黑色。根是黑色。所有叶子都是黑色(叶子是NIL节点)。每个红色节点必须有两个黑色的子节点。(从每原创 2016-04-20 16:16:18 · 358 阅读 · 0 评论