自娱自乐的代码人,专注Java、c、php

GIT:https://github.com/zhuli InitPHP开源框架:http://initphp.com

Nginx源码分析 - 基础数据结构篇 - 双向链表结构 ngx_queue.c

Nginx的queue链表结构非常小巧和简单。设计的非常精巧。 通过queue的简单和精巧的设计,让Nginx的queue的数据结构和具体业务依赖进行了解耦。一般我们在设计c语言程序的时候,完全可以学习Nginx的这种数据结构的设计方式。 数据结构定义 链表数据结构 ngx_queue_t t...

2016-01-31 17:49:19

阅读数:1667

评论数:0

Nginx源码分析 - 基础数据结构篇 - 缓冲区结构 ngx_buf.c

Nginx的buf缓冲区数据结构,主要用来存储非常大块的内存。ngx_buf_t数据结构也贯穿了整个Nginx。 缓冲区ngx_buf_t是nginx处理大数据的关键数据结构,它既应用于内存数据也应用于磁盘数据。 数据结构定义 缓冲区内存块的数据结构 ngx_buf_t /** * Ngin...

2016-01-30 13:32:53

阅读数:3476

评论数:6

Nginx源码分析 - 基础数据结构篇 - 数组结构 ngx_array.c

前面一章我们介绍了Nginx的内存池的数据结构。Nginx的内存管理都是围绕内存池来实现的,包括array数组类型也是基于Nginx的pool来实现数据结构。 Nginx的Array结构设计得非常小巧,主要用于存储小块内存。Nginx的数组每个元素的大小是固定的。 数据结构定义 ngx_arr...

2016-01-28 16:50:33

阅读数:1940

评论数:0

Nginx源码分析 - 基础数据结构篇 - 内存池 ngx_palloc.c

Nginx的内存管理是通过内存池来实现的。Nginx的内存池的设计非常的精巧,很多场景下,我们可以将Nginx的内存池实现抽象出来改造成我们开发中的内存池。 内存池 一般我们使用malloc/alloc/free等函数来分配和释放内存。但是直接使用这些函数会有一些弊端: 1. 虽然系统自带的...

2016-01-26 17:38:28

阅读数:3516

评论数:4

Nginx源码分析 - 初探Nginx的架构

Nginx是我们日常使用非常多的一款服务器。 Nginx的源码写的非常漂亮,是c语言学习和进阶的最好的学习资料。 下面我们先看下Nginx的目录结构: Nginx的源码主要分布在src/目录下,而src/目录下主要包含三部分比较重要的模块。 1. core:包含了Nginx的最基础的库和框架。包...

2016-01-25 19:20:44

阅读数:3416

评论数:2

Linux细节 - 常用Linux下排查服务器性能命令

uptime 说明:此命令可以快速查看系统的负载值。负载值分别为1分钟、5分钟、15分钟。 [root@localhost ~]# uptime 16:32:06 up 45 min, 2 users, load average: 0.00, 0.01, 0.05

2016-01-14 16:35:02

阅读数:2180

评论数:0

Linux c 开发 - 常用Linux下c语言调试方法

本文主要总结一下Linux下调试c语言进程的常用方法。 1. dmesg dmesg主要用于在进程崩溃掉的时候,显示内核的相关信息。 dmesg | tail -f #打印当前信息 dmesg -c #打印后,清除缓冲区内容 dmesg -s 1024 #定义缓冲区大小 [root@local...

2016-01-05 17:15:26

阅读数:1519

评论数:0

提示
确定要删除当前文章?
取消 删除