搭建python下web (tornado + Dgango)
来源:互联网 发布:成都余香科技知乎 编辑:程序博客网 时间:2024/06/16 22:20
[program:tornado_oa-9003]command=/home/albert/githublearning/system-foro_a/ENV/bin/python /home/albert/ githublearning/system-foro_a/oa_web/run.py --port=9003autostart=trueautorestart=true[program:dgango_oa]command=/home/albert/githublearning/system-foro_a/ENV/bin/python /home/albert/ githublearning/system-foro_a/oa_admin/manage.py runserverautostart=trueautorestart=true
安装virtualenv (用于创建独立的Python环境,多个Python互相独立,互不影响)
sudo apt-get install python-virtualenv
如:创建**ENV**的虚拟环境
virtualenv ENV
启动虚拟环境
cd ENV
source ./bin/activate
退出虚拟环境:
接下来所有模块都只会安装到该目录中去:pip install **
deactivate
../env/bin/pipinstall -r requirement.txt进行批量安装:
requirement.txt里面内容为:
Django==1.5
django-grappelli==2.4.8 #×××××××用来进行django 的admin功能进行界面美化的
south
MySQL-python
tornado==3.1.1
xlrd #××××××作为操作xlrd的
中间可能会碰到不能安装MySQL-python的情况那就要先
1安装mysql-server mysql-client
2 sudo apt-get install build-essential python-dev libmysqlclient-dev
如果有时碰到如下面的问题:
Traceback(most recent call last):
File"run.py", line 3, in <module>
fromoa_web.settings import settings
File"/home/administrator/www/pinhui_oa/oa_web/oa_web/settings.py",line 5, in <module>
fromoa_admin.init import init_django_settings
ImportError:No module named oa_admin.init
那是因为没有连接库:链接一个库到python的site-packages中:
administrator@ubuntu:~/www/pinhui_oa/oa_web/env/lib/python2.7/site-packages$ln -s ~/www/pinhui_oa/oa_admin/oa_admin/ .
我自己开发的环境为了方便开发时启动服务器而编写的脚本:
python编写 启动web,admin服务器的脚本:
#!/usr/bin/python
#start web tornado server and dgango server
"""
use subprocess to run run.py
and os.system to run manage.py
"""
import os.path as osp
import os
import sys
import subprocess
path = osp.abspath(osp.dirname(__file__))
tornadoserverpath = path+'/pinhui_oa/oa_web'
dgangoserverpath = path+'/pinhui_oa/oa_admin'
pythonenv = path+'/env/bin/python'
#add sys.path for tornado dgango
sys.path.append(tornadoserverpath)
sys.path.append(dgangoserverpath)
#fork process for run.py and then exec manage.
print "%s" %(sys.argv[0])
subprocess.Popen('env/bin/python %s/run.py' %tornadoserverpath,shell=True)
os.system('env/bin/python %s/manage.py "runserver"' %dgangoserverpath)
在生产环境的时候一般用supervisord来进行启动程序的监控进行自动重启工作:
1:生成和编辑 supervisord.conf进行要添加的进程如下面:
[program:nginx]command=/usr/local/nginx/sbin/nginxpriority=1numprocs=1autostart=trueautorestart=true[program:tornado_oa-9000]command=/home/albert/githublearning/system-foro_a/ENV/bin/python /home/albert/ githublearning/system-foro_a/oa_web/run.py --port=9000autostart=trueautorestart=true
[program:tornado_oa-9003]command=/home/albert/githublearning/system-foro_a/ENV/bin/python /home/albert/ githublearning/system-foro_a/oa_web/run.py --port=9003autostart=trueautorestart=true[program:dgango_oa]command=/home/albert/githublearning/system-foro_a/ENV/bin/python /home/albert/ githublearning/system-foro_a/oa_admin/manage.py runserverautostart=trueautorestart=true
2.添加可视化管理功能 修改/etc/supersord.conf
[inet_http_server] ; inet (TCP) server disabled by default
port=127.0.0.2:9001 ; (ip_address:port specifier, *:port for all iface)username=user ; (default is no username (open server))
password=123 ; (default is no password (open server))
3.运行supervisord
sudo supervisord -c /etc/supervisord.conf
4.supervisord操作命令 先用 supervisorctl进入命令环境,然后查看--help进行操作,可以通过reload等进行控制
注意:要以root形式运行supervisord,避免有些程序因为权限问题不能启动。
- 搭建python下web (tornado + Dgango)
- python tornado 搭建webServer
- python tornado web window7 开发笔记1:环境搭建
- python Tornado简单服务器搭建
- Python web框架:Django & Tornado
- Python web框架:Django & Tornado
- python tornado web开发环境
- PythonStock(3):使用python tornado web进行开发
- Windows下配置Python+tornado
- windows 下 python tornado 配置
- Centos搭建Python+Nginx+Tornado+Mysql环境
- Python:FriendFeed的Tornado Web Server
- Python:FriendFeed的Tornado Web Server
- 非阻塞的Python web框架tornado
- 两个Python web框架:Django & Tornado比较
- 介绍两个Python web框架:Django & Tornado
- 介绍两个Python web框架:Django & Tornado
- 两个Python web框架:Django & Tornado比较
- iOS6和iOS7的navigation空白问题
- linux 下面 Redis 服务器端 的安装 与部署
- 关于C++中的前置声明
- 插入排序
- How to stitch photos together on Linux
- 搭建python下web (tornado + Dgango)
- 把HTML表单提交的数据转化成XML文件
- C++ List 双向链表
- 软件测试管理中预防bug的重要性及bug分析
- <label>标签for属性的妙用
- hibernate——helloworld
- Week9练习
- Luke:Lucene索引查看工具
- Leetcode: Binary Tree Level Order Traversal II 理解分析