tornado使用教程,tornado部署

  tornado使用教程,tornado部署

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

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

  $mkdirtornado_todo

  $cdtornado_todo

  $ pipen安装-python 3.6

  $ pipenvshell

  (龙卷风-一些哈希)$ pipeninstalltornado创建一个setup.py文件来安装我们的应用程序相关的东西:

  (龙卷风-一些哈希)$ touch设置。巴拉圭

  #setup.py

  fromsetuptoolsimportsetup,find_packages

  要求=[

  "龙卷风",

  龙卷风-sqlalchemy,

  心理战2 ,

  ]

  设置(

  name=tornado_todo ,

  版本=0.0 ,

  描述=ATo-DoListbuiltwithTornado ,

  author=Yourname ,

  author_email=您的电子邮件,

  关键词=网络龙卷风,

  packages=find_packages(),

  install _ requires=要求,

  entry_points={

  控制台_脚本 :[

   serve_app=todo:main ,

  ],

  },

  )

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

  

todo/

  __init__.py

  models.py

  views.py

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

  

#__init__.py

  fromtornado.webimportApplication

  

  defmain():

  """Constructandservethetornadoapplication."""

  app=Application()

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

  

#__init__.py

  fromtornado.httpserverimportHTTPServer

  fromtornado.optionsimportdefine,options

  fromtornado.webimportApplication

  

  define('port',default=8888,help='porttolistenon')

  

  defmain():

  """Constructandservethetornadoapplication."""

  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

  fromtornado.httpserverimportHTTPServer

  fromtornado.ioloopimportIOLoop

  fromtornado.optionsimportdefine,options

  fromtornado.webimportApplication

  

  define('port',default=8888,help='porttolistenon')

  

  defmain():

  """Constructandservethetornadoapplication."""

  app=Application()

  http_server=HTTPServer(app)

  http_server.listen(options.port)

  print('Listeningonhttp://localhost:%i'%options.port)

  IOLoop.current().start()

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

  

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

  

以上就是python tornado启动和配置的方法。更多Python学习推荐:PyThon学习网教学中心

  


郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: