创作人QQ:851301776,邮箱:lfr890207@163.com,欢迎大家一起技术交流,本博客主要是自己学习的心得体会,只为每天进步一点点!
个人座右铭:
1.没有横空出世,只要厚积一定发。
2.你可以学历不高,你可以不上学,但你不能不学习
此博客总结,主要是方便日后查看学习
一、概述Nginx的post事件处理机制。这个post事件是什么意思呢?它表示允许事件延后执行。Nginx设计了两个post队列,一个是由被触发的监听连接的读事件构成的ngx_posted_accept_events队列,另一个是由普通读/写事件构成的 ngx_posted_events队列。这样的post事件可以让用户完成什么样的功能呢?
- 将epoll_wait产生的一批事件,分到这两个队列中,让存放着新连接事件的ngx_posted_accept_events队列优先执行,存放普通事件的ngx_posted_events队列最后执行,这是解决“惊群”和负载均衡两个问题的关键。
- 如果在处理一个事件的过程中产生了另一个事件,而我们希望这个事件随后执行(不 是立刻执行),就可以把它放到post队列中。在9.8.3节中会介绍post队列。
处理新连接事件的回调函数是ngx_event_accept,其原型如下。
<



