tornado后台热加载配置

后台使用tornado4开发,需要搭建一个后台开发环境,让代码修改后自动重启 热加载;

1.简介

Python后端使用 tornado开发并且使用setuptools进行编译部署线上,流程相对完善;每次代码版本修改完成后编译并push入代码库,在发布主机pull  install 安装 并重启即可;

但是作为开发人员 进行任务开发时我们不想要如此繁琐的 验证过程,并且习惯如Django runserver自动监听代码修改 并自动reload的开发模式;而在tornado下则是tornado.autoreload,具体如下:

2.开发环境构建

本地使用pycharm for Mac开发,使用ssh 远程依赖。配置ssh 远程部署及依赖方式不过多赘述;在 Tools中配置部署,及在pycharm-》preferences中配置远程依赖即可;

环境:

开发客户端 :终端开发主机,代码编辑后使用pycharm自动保存入 远程依赖开发机

远程依赖开发机 :pip 安装依赖 提供依赖及开发运行 

1)启动脚本更改

import tornado.autoreload

application = tornado.web.Application(url_map, debug=True)

如图加入两行即可:

tornado后台热加载配置_第1张图片

2)运行

将代码自动上传到远程主机后,在远程主机执行 python script_start 启动脚本即可

关于tornado.autoreload

启动reload的方式有多重,其中我采用如上方式,还可以在主函数中使用tornado.autoreload.start(io_loop)方式;

autoreload能自动监听引入的相关模块,即在头部import 的文件,如有变更则自动reload;

对于未import的模块 使用tornado.autoreload.watch() 方法监听;

autoreload 模式不支持 bind、start多进程模式;

因将代码打包并安装在 /usr/lib/python2.6/site-packages,每次启动优先运行这里的包, 无法运行 当前的开发环境;需将安装包移除即可

你可能感兴趣的:(tornado后台热加载配置)