前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tornado剑谱03——入门程序

Tornado剑谱03——入门程序

作者头像
大牧莫邪
发布2018-08-27 17:19:57
4110
发布2018-08-27 17:19:57
举报

1.入门程序

1.1. 项目构建

Tornado的项目是自主独立开发模式,首先定位好自己的项目文件夹,如d:/py_torn/

在项目文件夹中,创建第一个项目文件夹demo01/

创建一个web应用程序模块:helloworld.py

创建一个服务器运行模块:manage.py

项目文件夹结构如下:

代码语言:javascript
复制
|-- d:/py_torn/ # tornado项目工作目录

    |-- demo01/ # 入门项目

    |-- helloworld.py # 一个项目程序模块

    |-- manage.py # 服务器定义模块

1.2. WEB接口定义

编辑helloworld.py,添加一个web接口处理类

代码语言:javascript
复制
# 引入需要的模块

from tornado.web import RequestHandler

# 定义接口处理类

class IndexHandler(RequestHandler):

    # 定义视图处理函数

    def get(self):

     # 返回视图数据

    self.write(‘<h1>hello tornado!</h1>’)

1.3. WEB服务器配置启动

编辑manage.py服务器模块,添加如下内容

代码语言:javascript
复制
# 引入需要的模块

from tornado.web import Application

from tornado.ioloop import IOLoop

import helloworld

if __name__ == “__main__”:

    # 将项目部署成web应用程序

    app = Application([

         (r’/’, helloworld.IndexHandler),

    ])

    # 指定监听端口

    app.listen(8000)

    # 启动事件轮询监听

    IOLoop.current().start()

1.4. 运行测试

开发完成之后,执行命令启动服务器

代码语言:javascript
复制
python manage.py

打开浏览器,访问http://localhost:8000,出现如下界面

|

image.png

|

1.5. 启动服务器配置

在上面的项目中,看到的是直接将web接口定义类绑定到了路由上,监听端口之后就完成了项目的部署,那么项目部署的底层操作究竟是什么样的呢?我们改造上述服务器处理模块manager.py的代码如下:

代码语言:javascript
复制
from tornado.httpserver import HTTPServer

..

If __name__ == “__main__”:

    app = Applicatoin(

      [

          (r’/’, IndexHandler)

    ],

     ..

    )

    # app.listen(8000)

    http_server = HTTPServer(app)

    http_server.bind(8000)

    http_server.start()

    IOLoop.current().start()

|

上述代码就是app.listen(8000)后台执行的底层的代码

首先将web应用程序对象app部署到了HTTPServer服务器中

HTTPServer服务器绑定监听了8000端口

然后通过HTTPServer.start()函数启动了服务器

|

PS:HTTPServer.start()函数中,可以传递参数

如果没有传递参数:默认启动一个进程直接运行服务

如果传递了>0的参数:表示启动指定数目的进程运行服务

如果传递了None或者<=0的参数:表示启动进程的数量和当前主机的CPU核心数相同

|

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.05.06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.入门程序
    • 1.1. 项目构建
      • 1.2. WEB接口定义
        • 1.3. WEB服务器配置启动
          • 1.4. 运行测试
            • 1.5. 启动服务器配置
            相关产品与服务
            图数据库 KonisGraph
            图数据库 KonisGraph(TencentDB for KonisGraph)是一种云端图数据库服务,基于腾讯在海量图数据上的实践经验,提供一站式海量图数据存储、管理、实时查询、计算、可视化分析能力;KonisGraph 支持属性图模型和 TinkerPop Gremlin 查询语言,能够帮助用户快速完成对图数据的建模、查询和可视化分析。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档