CentOS 6.7下Django之安装与部署(4)

平时开发或学习时我们通常使用一个单一的设置文件 settings.py文件由django-admin.py startproject命令生成。但是当你准备要进行配置的时候,你将发现你需要多个配置文件以使你的开发环境和产品环境相独立。比如,你可能不想每次在本地机器上测试代码改变的时候将DEBUG从False 改为True。Django通过使用多个配置文件而使得这种情况很容易得到避免。

有三种实现方法(推荐第三种方法):

1.     设置成两个全面的,彼此独立的配置文件

直接把settings.py复制一份即可

2.     设置一个基本的配置文件(比如,为了开发)和第二个(为了产品)配置文件,第二个配置文件仅仅从基本的那个配置文件导入配置,并对需要定义的进行复写.

例:

# settings.py

DEBUG = True

TEMPLATE_DEBUG = DEBUG

DATABASE_ENGINE = 'postgresql_psycopg2'

DATABASE_NAME = 'devdb'

DATABASE_USER = ''

DATABASE_PASSWORD = ''

DATABASE_PORT = ''

# settings_production.py

from settings import *

DEBUG = TEMPLATE_DEBUG = False

DATABASE_NAME = 'production'

DATABASE_USER = 'app'

    DATABASE_PASSWORD = 'letmein'

3.     使用一个单独的配置文件,此配置文件包含一个Python的逻辑判断根据上下文环境改变设置。

# settings.py

import socket

if socket.gethostname() == 'dx.com':

   DEBUG = TEMPLATE_DEBUG = True

else:

   DEBUG = TEMPLATE_DEBUG = False

apache/nginx+Django+Gunicorn的部署

安装 Gunicorn

  安装gunicorn 就是简单地pip install gunicorn

运行,将Django 作为一个WSGI 应用在Gunicorn 中运行

 Gunicorn安装后,可以使用一个gunicorn  命令来启动Gunicorn 服务器进程。最简单地,gunicorn 的调用只需要在其调用位置具有一个包含WSGI application 对象的模块,该对象的名称必须为名为application。所以在一个Django 项目中,调用gunicorn 就像这样:

gunicorn myproject.wsgi

它将启动一个进程,它运行一个线程并监听在127.0.0.1:8000。

注意!它要求你的项目位于Python 的路径中;保证这点最简单的方法就是在与manage.py 文件所在的相同目录中运行这个命令。

gunicorn命令其他参数:

-b 监听ip和端口,默认是 127.0.0.1:8000 如:0.0.0.0:80

-w 开启多个进程 如 -w 8

-k gunicorn默认使用同步阻塞的网络模型(-k sync),对于大并发的访问可能表现不够好, 它还支持其它更好的模式,比如:gevent或meinheld。

先pip installgevent然后使用gevent模型  -kgevent

-c 可以用配置文件

最后可以 nohup -w 4 -k gevent gunicorn AutoSa.wsgi:application 

Ubuntu 14.04下Django+MySQL安装部署全过程

Django1.8返回json字符串和接收post的json字符串内容 

如何使用 Docker 组件开发 Django 项目? 

Ubuntu Server 12.04 安装Nginx+uWSGI+Django环境  

Django+Nginx+uWSGI 部署  

Django实战教程  

Django Python MySQL Linux 开发环境搭建  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2fea91c81e2b2483ea4e1477e8819a29.html