Skip to content

Latest commit

 

History

History
60 lines (51 loc) · 1.84 KB

15.md

File metadata and controls

60 lines (51 loc) · 1.84 KB

上一节 创建超级管理员账号
下一节 第一个接口:登录

运行服务

django自身是带运行服务的方式的,但是那只是用于开发调试使用的.
部署到生产环境一般都使用gunicorn或者uwsgi来完成.
我一般运行django项目都是通过gunicorn搭配gevent.

pip install gunicorn
pip install gevent
pip install setproctitle
pip freeze > requirements.txt

tag: 0.0.15

后端

涉及文件

requirements.txt
gunicorn.py

代码

gunicorn.py:
创建此文件用来保存gunicorn启动的配置参数.

import os
import multiprocessing

# 设置gunicorn进程名称,ps和top时可以查看
# 需要安装: pip install setproctitle
proc_name = 'rurality'
default_proc_name = 'rurality'
CUR_DIR = os.path.dirname(__file__)

# 开启几个进程
workers = multiprocessing.cpu_count() * 2
# 每个进程开启几个线程
threads = multiprocessing.cpu_count() * 2
# 每个worker最大处理请求数量, 超过就重启此worker
max_requests = 1000
# 随机增加偏移量range(1, max_requests_jitter),与max_requests配合,防止多个worker同时重启
max_requests_jitter = 100

bind = "0.0.0.0:18785"
chdir = CUR_DIR
preload = True
worker_class = 'gevent'

workers根据CPU数量来设置.
通过proc_name和default_proc_name来设置进程名称(pip install > setproctitle就是干这个用的),方便查看.
运行服务:

gunicorn -c gunicorn.py rurality.wsgi:application

上一节 创建超级管理员账号
下一节 第一个接口:登录