在Tornado中无缝运行Django和Tornadio2项目。Like.A.Boss。
TornadIO2Go的Python项目详细描述
Tornadio2go将TornadIO2与Django项目集成。它允许你 在同一个Tornado中运行Django项目和Tornadio2应用程序 服务器。或者您可以将其用作生产就绪的runserver替代品。
安装
最快的安装方法是通过pip从virtualenv中安装。
pip install https://github.com/rudeb0t/tornadio2go/archive/master.zip#egg=TornadIO2Go
或者,您可以选择使用“可编辑”安装:
pip install -e https://github.com/rudeb0t/tornadio2go.git#egg=TornadIO2Go
快速启动
将tornadio2go添加到INSTALLED_APPS中,然后运行syncdb。这个 将安装Tornadio2go使用的模型。创建你的 tornadio2.SocketConnection子类并将事件处理程序编写为 平常的。然后将以下内容添加到您的settings.py:
TORNADIO2GO = { 'SOCKETCONNECTION_CLASS': 'path.to.socketConnectionClass' }
然后从命令行启动tornadio2服务器:
python manage.py runtornadio2
这将启动绑定到127.0.0.1的服务器并监听端口8000。
django设置
所有tornadio2go的设置都可以在django设置TORNADIO2GO中找到。 这是一个简单的pythondict。可用设置,所有设置都是可选的:
- SOCKETCONNECTION_CLASS-这应该是 tornadio2.SocketConnection子类。如果没有指定, runtornadio2将在Tornado Web服务器中运行Django项目。
- USER_SETTINGS-这是一个dict包含的选项应该是 创建新的tornadio2.router.TornadioRouter实例时。这是 仅在指定SOCKETCONNECTION_CLASS时使用。
- TORNADO_OPTIONS-这是您想要的所有选项中的一个dict。 用于将要创建的tornado.httpserver.HTTPServer实例。 请参阅HTTPServer文档。
- TORNADO_HANDLERS-这是要添加的处理程序列表 在fallbackhandler之前。
命令行选项
runtornadio2命令的命令行选项与django的类似 runserver命令。做:
python manage.py runtornadio2 --help
显示可用选项的列表。典型用法是:
python manage.py runtornadio2 [options] [optional port number, or ipaddr:port]
要运行多进程服务器,请使用--num-process选项并将其设置为 零或大于一的任何数字。自动设置为零 检测可用CPU内核的数量并派生适当数量的 过程。设置为大于1的任意数字以派生特定数量的 过程。
与主管一起运行
要在supervisord下运行tornadio2go,必须使用–noreload 或者在 配置文件。监督人不喜欢被监督人 程序执行fork()操作,重载程序就是这样做的。
信号
在1.0.3中进行实验
版本1.0.3引入了在 初始化。信号列表(按发送顺序)如下 如下:
- 预服务器启动
- 开机后的服务器
- 预添加处理程序
- 后添加处理程序
信号处理程序都将接收 “龙卷风”应用程序的关键字参数。除非另有说明,发送方 总是tornado.httpserver.httpserver对象。
此功能当前标记为实验性,将来可能会更改 版本。