python tornado部署_python tornado如何启动和配置?

之前简单的讲过了python tornado的安装,有的小伙伴已经迫不及待的想要做出一番成果了。接下来,小编就带大家学习下如何启动和配置,向高阶段的大神进发吧。

如果小伙伴一直关注这个系列,那么第一步应该对你来说习以为常。$ mkdir tornado_todo

$ cd tornado_todo

$ pipenv install --python 3.6

$ pipenv shell

(tornado-someHash) $ pipenv install tornado

创建一个 setup.py 文件来安装我们的应用程序相关的东西:(tornado-someHash) $ touch setup.py

# setup.py

from setuptools import setup, find_packages

requires = [

'tornado',

'tornado-sqlalchemy',

'psycopg2',

]

setup(

name='tornado_todo',

version='0.0',

description='A To-Do List built with Tornado',

author='',

author_email='',

keywords='web tornado',

packages=find_packages(),

install_requires=requires,

entry_points={

'console_scripts': [

'serve_app = todo:main',

],

},

)

因为 Tornado 不需要任何外部配置,所以我们可以直接编写 Python 代码来让程序运行。让我们创建 todo 目录,并用需要的前几个文件填充它。todo/

__init__.py

models.py

views.py

就像 Flask 和 Pyramid 一样,Tornado 也有一些基本配置,放在 __init__.py 中。从 tornado.web 中,我们将导入 Application 对象,它将处理路由和视图的连接,包括数据库(当我们谈到那里时再说)以及运行 Tornado 应用程序所需的其它额外设置。# __init__.py

from tornado.web import Application

def main():

"""Construct and serve the tornado application."""

app = Application()

像 Flask 一样,Tornado 主要是一个 DIY 框架。当构建我们的 app 时,我们必须设置该应用实例。因为 Tornado 用它自己的 HTTP 服务器来提供该应用,我们必须设置如何提供该应用。首先,在 tornado.options.define 中定义要监听的端口。然后我们实例化 Tornado 的 HTTPServer,将该 Application 对象的实例作为参数传递给它。# __init__.py

from tornado.httpserver import HTTPServer

from tornado.options import define, options

from tornado.web import Application

define('port', default=8888, help='port to listen on')

def main():

"""Construct and serve the tornado application."""

app = Application()

http_server = HTTPServer(app)

http_server.listen(options.port)

当我们使用 define 函数时,我们最终会在 options 对象上创建属性。第一个参数位置的任何内容都将是属性的名称,分配给 default 关键字参数的内容将是该属性的值。

例如,如果我们将属性命名为 potato 而不是port,我们可以通过options.potato访问它的值。

在 HTTPServer 上调用listen并不会启动服务器。我们必须再做一步,找一个可以监听请求并返回响应的工作应用程序,我们需要一个输入输出循环。幸运的是,Tornado以tornado.ioloop.IOLoop的形式提供了开箱即用的功能。# __init__.py

from tornado.httpserver import HTTPServer

from tornado.ioloop import IOLoop

from tornado.options import define, options

from tornado.web import Application

define('port', default=8888, help='port to listen on')

def main():

"""Construct and serve the tornado application."""

app = Application()

http_server = HTTPServer(app)

http_server.listen(options.port)

print('Listening on http://localhost:%i' % options.port)

IOLoop.current().start()

我喜欢某种形式的 print 语句,来告诉我什么时候应用程序正在提供服务,这是我的习惯。如果你愿意,可以不使用 print。

我们以IOLoop.current().start() 开始我们的 I/O循环。让我们进一步讨论输入,输出和异步性。

以上就是python tornado启动和配置的方法。更多Python学习推荐:JQ教程网Python大全。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值