gpt4 book ai didi

python - uwsgi + nginx背后的分析生产 flask 应用程序

转载 作者:太空宇宙 更新时间:2023-11-03 20:39:18 26 4
gpt4 key购买 nike

我有一个在Linux(centos)上在uwsgi + nginx之后运行的flask应用程序。

我想分析该应用程序以查找瓶颈(在每个功能上花费的时间)。
这是一个繁重的应用程序,需要8名工人在生产上运行。

尽管这似乎是非常基本的要求,但是我还没有找到一个好的生产配置文件系统。

我尝试使用python信号库生成“ https://www.nylas.com/blog/performance/”中建议的配置文件-但遇到了问题:
仅在主线程上允许signal()操作,而生产uwsgi只需运行少量工人。
此外,出于性能方面的考虑,我们允许使用孤儿,因此仅在主节点上运行操作不会对孤儿起作用。
任何建议将不胜感激!

这是我们的uwsgi配置:


    [uwsgi]
    虚拟主机= true
    uid =无业游民

    基地= /项目/
    wsgi-file = /project/webserver/src/wsgi.py
    chdir =%(基本)

    chown-socket = nginx:nginx
    catch-exceptions = true
    uid = nginx
    gid = nginx
    chmod-socket = 777
    套接字= /var/run/webpage.com.uwsgi.socket
    插件= python,dogstatsd
    #plugin = python
    大师=真
    可通话=应用

    流程= 8
    线程= 24
    最大请求数= 64
    #reload-on-as = 2000
    重载怜悯= 3600
    #reload-on-rss = 4000
    #limit-as = 10000
    cpu亲和力= 1
    #thread-stacksize = 1024
    最大fd = 250000
    #buffer-size = 30000
    雷锁= true
    真空=真
    enable-threads = true
    #no-orphans =真
    按期死亡=正确
    #socket-timeout = 600
    #websocket-max-size = 16000
    #logto = /var/log/uwsgi/log.txt
    统计信息= /tmp/uwsgi_stats.socket

最佳答案

Pyliveupdate可能是用于分析多个进程/线程的合适工具。它运行一个独立的控制器来指示所有注册的进程和线程进行性能分析。它还可以动态启用和禁用概要分析,因此您无需重新启动生产服务器。在https://asciinema.org/a/304465处查看演示,并在项目仓库中查看https://github.com/devopspp/pyliveupdate

关于python - uwsgi + nginx背后的分析生产 flask 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56956495/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com