生产采用方案:
1 # 前面6个根据实际修改,其他的可以不用改 2 [uwsgi] 3 # 项目目录 4 chdir=/Users/wsl/App/dev/recovery/recovery 5 # 设置日志目录 6 daemonize=/Users/wsl/App/dev/recovery/uwsgi.log 7 # 静态文件的配置,配合static_url使用,前面的static是static_url中的字段 8 static-map = /static=/Users/wsl/App/dev/recovery/recovery/static 9 # 指定项目的wsgi模块 10 module=recovery.wsgi 11 # 指定IP端口 12 http=127.0.0.1:8888 13 # 指定sock的文件路径 14 socket=/Users/wsl/App/dev/recovery/recovery/uwsgi.sock 15 # 指定pid文件 16 pidfile=/Users/wsl/App/dev/recovery/recovery/uwsgi.pid 17 # 启用主进程 18 master=true 19 # 进程个数 20 workers=3 21 # 在每个worker而不是master中加载应用 22 lazy-apps=true 23 # 每个进程最大的请求数 24 max-request = 1000 25 # 启动uwsgi的用户名和用户组 26 uid=root 27 gid=root 28 # 自动移除unix Socket和pid文件当服务停止的时候 29 vacuum=true 30 # 启用线程 31 enable-threads=true 32 # 设置自中断时间 33 harakiri=30 34 # 设置缓冲 35 post-buffering=4096 36 #设置在平滑的重启(直到接收到的请求处理完才重启)一个工作子进程中,等待这个工作结束的最长秒数。这个配置会使在平滑地重启工作子进程中,如果工作进程结束时间超过了8秒就会被强行结束(忽略之前已经接收到的请求而直接结束) 37 reload-mercy = 8
参考:
https://www.cnblogs.com/chenice/p/6921727.html
https://blog.csdn.net/Miss_Audrey/article/details/81874038
http和socket的区别: https://blog.csdn.net/asd52656/article/details/97556270
1 [uwsgi]
2 #监听的地址 必须和nginx中的一致
3 socket = 127.0.0.1:8000
4 #wsgi文件,在你的项目配置目录下可以找到 注意:最后输入绝对地址
5 wsgi-file = /home/aeasringnar/my_Project/jwt-test/my_jwt_test/wsgi.py
6 # 你的项目的根目录 绝对地址
7 chdir = /home/aeasringnar/my_Project/jwt-test
8 # 你项目使用的虚拟环境的根目录 绝对地址
9 home = /home/aeasringnar/.envs/jwt-test
10 #你的日志目录,注意的是,你的django控制台输出的日志都会在这里输出,uwsgi的相关日志也在这里
11 daemonize = /home/aeasringnar/my_Project/jwt-test/test.log
12 ####下面的配置可以有 也可以没有,看个人需求,不建议配置
13 # 主进程
14 master = true
15 # 多站模式
16 vhost = true
17 # 多站模式时不设置入口模块和文件
18 no-site = true
19 # 子进程数
20 workers = 2
21 # 退出、重启时清理文件
22 vacuum = true
启动命令: uwsgi
-
-
ini test.ini