![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
nginx
文章平均质量分 57
yiliyo
这个作者很懒,什么都没留下…
展开
-
nginx -s reload原理
我们执行这条命令的原因是希望 nginx 不停止服务始终在处理新的请求的同时把 nginx 的配置文件平滑的把旧的 nginx.conf 配置更新为新的 nginx.conf 配置。这样一个功能对于 nginx 非常有必要,但是有时候我们会发现在执行nginx -s reload命令后,worker 子进程的数量会变多了,这是因为老的配置运行的 worker 进程长时间没有退出,当使用 stream 做四层反向代理的时候,可能这种场景会更多。nginx reload流程(1)向 master..原创 2021-01-06 12:50:08 · 3515 阅读 · 2 评论 -
nginx upstream 长链接池
cache为已建立的未使用链接,选socket时从cache对列中找与负载均衡选中的upstream地址匹配的socket,若未选到,则新建一个socketfree为正在使用的socket的和未建链的结构。upstream_free_keepalive_peer时若free队列满,则把cache对列尾(被使用较少)remove 一个node,并socket close掉;若free队列未满,则从free头拿出一个node;把当前已用完的socket放到node并insert到cache,供使用。t原创 2021-01-16 15:33:23 · 396 阅读 · 0 评论 -
nginx http模块初始化与处理流程
1,ngx_http_init_connection ngx_http_wait_request_handler ngx_http_wait_request_handler ngx_http_process_request_line和ngx_http_process_request_headers --ngx_http_process_request --ngx_http_ha...原创 2021-01-09 09:53:51 · 557 阅读 · 3 评论 -
nginx mater和worker处理listen和accept 套接字
1,master进程创建socket,bind,listen。main(和ngx_master_process_cycle、ngx_single_process_cycle中的reload) --ngx_init_cycle --ngx_open_listening_sockets --ngx_socket --bind --listen2,每个worker进程都把listenfd加入epoll;并设置原创 2021-01-06 20:37:56 · 375 阅读 · 0 评论