通过火焰图学习nginx upstream 模块的处理

以下几个图是关于upstream 调用链的

参考环境准备

基于了flamescope 结合perf 文件可以方便的学习

  • flamescope 准备
version: "3"
services: 
  flamescope:
     image: dalongrong/flamescope
     ports: 
     - "5000:5000"
     volumes: 
     - "./profiles:/profiles"

profiles 目录的文件可以直接从github 获取 rongfengliang/openresty-perf

参考火焰图

  • 单进程模式

通过下图我们再结合源码学习Nginx 的单进程模式就很简单了

 

 

多进程模式

 

 

说明

以及是基于火焰图学习Nginx upstream 处理的一种方法思路,可以提高我们代码学习的速度,同时也方便模块调用分析

参考资料

https://github.com/baishancloud/nginx-development-guide/blob/master/zh.md
https://github.com/rongfengliang/openresty-perf
https://hub.docker.com/repository/docker/dalongrong/flamescope
https://github.com/rongfengliang/openresty-perf

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...