zoukankan      html  css  js  c++  java
  • supervisor 启动多个 uwsgi 实例

    # supervisor 配置:
    
    [program:uwsgi]
    command=/home/an/.virtualenvs/show-tools/bin/uwsgi --http 0.0.0.0:80%(process_num)02d --ini uwsgi.ini  # 不同的uwsgi实例监听不同的端口号。不能重复,否则只能启动一个实例,另一个会失败,报告 地址已经被占用的错误
    directory=/home/an/safety_tools
    stopasgroup=true
    user=an
    numprocs=2
    process_name=%(program_name)s_%(process_num)02d # 启动多个实例需要在进程名中添加 process_num 变量作为进程名的一部分,在supervisor的管理页面可以看到,本例为 uwsgi_00 和 uwsgi_01
    autostart=true
    autorestart=true
    stderr_logfile=logs/super_visor_err.log
    stdout_logfile=logs/super_visor_out.log
    
    [uwsgi]
    ;http:0.0.0.0:9000
    ;socket = 0.0.0.0:8001 
    chdir = /home/an/safety_tools # django 项目目录
    wsgi-file = conf/wsgi.py
    static-map = /static/=static_files  # django STATIC_ROOT 目录
    ; 开启业务线程支持 否则程序中开启的线程无法执行
    enable-threads = true
    master = true
    ; 检测 uwsgi服务器内部状态
    ;stats = 0.0.0.0:9191  # 这个不能写死在配置文件里,否则,会报 0.0.0.0:9191 地址已经被占用的错误。导致只能启动一个uwsgi实例。如果一定启用该功能,可以在 supervisor中,uwsgi启动命令那里通过命令行参数的方式添加;参考 --http
    ;线程stuck 30s 后 kill
    harakiri = 30
    ;logto = logs/uwsgi.log
    ;virtualenv = /home/an/.virtualenvs/backend
    ;processes = 2 ;多进程
    ;threads = 2 ; 多线程
    
  • 相关阅读:
    Python ES操作
    SVN总结
    MongoDB问题总结
    MySQL
    PyQt小工具
    Python logging模块
    shell脚本
    cmd命令
    eclipse java 项目打包
    Robot Framework:failed: Data source does not exist.错误
  • 原文地址:https://www.cnblogs.com/jijizhazha/p/13259577.html
Copyright © 2011-2022 走看看