zoukankan      html  css  js  c++  java
  • Django使用uwsgi部署教程

     一直想用uwsgi部署Django,因为uwsgi性能更好而且可以多进程跑(python manager.py runserver是单进程)。但在windows开发机上实验的时候死活装不了uwsgi(有人说可以装,反正我没装成功),就放弃了(还是太轻浮了啊),其实使用uwsgi真的很简单!步骤如下:

    1、安装uwsgi

    1
    pip install uwsgi

      注意:需要root权限安装,否则运行时会提示找不到uwsgi命令;或者到Python执行文件所在目录找到uwsgi命令,通过绝对路径执行uwsgi命令。如果你是windows环境,建议先放弃安装uwsgi吧,先到linux环境体验一下成功的乐趣后再来折腾windows环境吧。

    2、配置uwsgi.ini文件

    在Django的项目根目录(有manage.py的目录)下新建uwsgi.ini文件,配置内容如下(拷贝后将‘=’后面的内容改一下):

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    [uwsgi]
    #服务端口
    http = :8000
     
    #指定与Nginx通信的方式,不影响uwsgi本身运行。如果配置了需要到nginx中进行相关配置-才能通过nginx访问Django
    # socket = 127.0.0.1:8001
     
    # 启动一个master进程,来管理其余的子进程
    master = True
    processes = 4
    threads = 2
     
    #python虚拟环境目录绝对路径。如果有的话,home是虚拟环境根目录,PYTHNONHOME是虚拟环境下的bin目录(放置了Python执行文件)
    #home = /env
    #PYTHONHOME = /env/bin
     
    #django项目目录,与manager.py同级
    chdir = /var/www/项目名
     
    #主应用中的wsgi,下面这种配法是在Django根目录下运行uwsgi有效,主APP名为有settings.py的那个目录名。如果是其他目录运行,下面建议写成绝对路径。
    wsgi-file = 主APP名/wsgi.py
     
    #服务停止时自动移除unix Socket和pid文件
    vacuum = true
     
    #设置每个工作进程处理请求的上限,达到上限时,将回收(重启)进程,可以预防内存泄漏
    max-requests=5000
     
    #设置后台运行保存日志。只要配置了daemonize就会让uwsgi后台运行,同时将日志输出到指定目录
    daemonize=/var/www/log
     
    #保存主进程的pid,用来控制uwsgi服务
    pidfile=/tmp/xxx.pid
    #uwsgi --stop/reload xxx.pid 停止/重启uwsgi
     
    #静态文件映射
    #static-map = /static=Django下static目录的绝对路径

      

    3、启动uwsgi

    进入到Django根目录,执行如下命令就行了

    1
    uwsgi uwsgi.ini
  • 相关阅读:
    core dump相关
    编译与链接的问题
    shell和awk配合使用
    cybergarage-upnp
    miniupnpc
    openssl
    在 linux 下使用 CMake 构建应用程序
    Ubuntu下的多线程下载工具:MultiGet;并与 Firefox 建立关联 uget
    嵌入式web服务器-thttpd
    Android_Layout_xml布局
  • 原文地址:https://www.cnblogs.com/hls91/p/14885859.html
Copyright © 2011-2022 走看看