Nginx 过滤模块分析.pdfVIP

  • 20
  • 0
  • 约7.66千字
  • 约 6页
  • 2017-06-03 发布于湖北
  • 举报
Nginx 过滤模块的分析 过滤模块的分析 相关结构体 ngx_chain_t 结构⾮常简单,是⼀个单向链表: typedef struct ngx_chain_s ngx_chain_t; struct ngx_chain_s { ngx_buf_t *buf; ngx_chain_t *next; }; 在过滤模块中,所有输出的内容都是通过⼀条单向链表所组 。这种单向链表的设 计,正好应和了 Nginx 流式的输出模式。每次 Nginx 都是读到⼀部分的内容,就放到 链表,然后输出出去。这种设计的好处是简单,⾮阻塞,但是相应的问题就是跨链表 的内容操作⾮常⿇烦,如果需要跨链表,很多时候都只能缓存链表的内容。 单链表负载的就是 ngx_buf_t ,这个结构体使⽤⾮常⼴泛,先让我们看下该结构体的 代码: struct ngx_buf_s { u_char *pos; /* 当前buffer真实内容的起始位 u_char *last; /* 当前buffer真实

文档评论(0)

1亿VIP精品文档

相关文档