分类: Python2013-06-02 23:02 1725人阅读 评论(2) 收藏 举报

每天在群里跟很多群友讨论一些问题,觉得对自己的技术提升有很大的帮助,也可以集思广益,学到一些自己以前从没有接触到过的东西,比如Tornado,最近听见群里好多朋友都在讨论这个,于是我也跟风了解了一下。

Tornado是一个高效可扩展的非阻塞式web服务器以及其相关工具的开源版本,和当前主流的web服务器框架相比,明显的区别就在于它是非阻塞式服务器,而且速度相当快,这得益于它的非阻塞方式和对epoll的合理运用。简单的了解过后,我们来看下如何安装以及使用。

对于安装,可以有多种方式,例如手动编译源码,或者用easy_install,或者用pip安装,这里我采用的是pip安装方式,只需要一条命令即可,方便快捷,毕竟用虚拟键盘敲的手疼,命令如下:

  1. pip install Tornado

等待安装完成即可。

然后我们来看下第一个Hello World实例:

  1. #!/usr/bin/env python
  2. # -*- coding:utf-8 -*-
  3. #
  4. #   Authhor :Eric.Tang
  5. #   Email   :jeepxiaozi66@gmail.com
  6. #   Date    :13/06/02 22:17:57
  7. #   Desc    :hello,world of tornado
  8. #
  9. import tornado.ioloop
  10. import tornado.web
  11. class MainHandler(tornado.web.RequestHandler):
  12. def get(self):
  13. self.write("Hello, world")
  14. application = tornado.web.Application([
  15. (r"/",MainHandler),
  16. ])
  17. if __name__=="__main__":
  18. application.listen(8888)
  19. tornado.ioloop.IOLoop.instance().start()

然后保存为helloTornado.py。

接下来就可以执行这个文件了,那么我们这儿也有不同的执行方式,修改这个py文件的权限,使其变为可执行文件,或者直接在命令行中执行python helloTornado.py,两种方式都是可以的。

启动之后,我们就可以在浏览器中地址栏中输入localhost:8888,然后回车,就可以看到如下图的效果了:

OK,整个这篇博客也是在平板电脑上写完的,Tornado也是跑在这上面的,现在电量低于百分之三十了,触屏有点儿发飘了,关机充电,明天路上就还可以接着学习用了。晚安!

python进阶ing——创建第一个Tornado应用的更多相关文章

  1. Python进阶丨如何创建你的第一个Python元类?

    摘要:通过本文,将深入讨论Python元类,其属性,如何以及何时在Python中使用元类. Python元类设置类的行为和规则.元类有助于修改类的实例,并且相当复杂,是Python编程的高级功能之一. ...

  2. Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束

    Python进阶----数据库引擎(InnoDB),表的创建,mysql的数据类型,mysql表的约束 一丶MySQL的存储引擎 什么是存储引擎:    MySQL中的数据用各种不同的技术存储在文件( ...

  3. 创建第一个python程序:‘Hello World!’

    安装好python解释器就可以创建第一个仪式程序Helloworld了 1.Python程序的3种运行方式 1.1.Python解释器直接运行 在Windows或者Linux命令行输入python,进 ...

  4. Python进阶:函数式编程实例(附代码)

    Python进阶:函数式编程实例(附代码) 上篇文章"几个小例子告诉你, 一行Python代码能干哪些事 -- 知乎专栏"中用到了一些列表解析.生成器.map.filter.lam ...

  5. python运维开发(二十三)---tornado框架

    内容目录: 路由系统 模板引擎 cookie 加密cookie 自定义api 自定义session 自定义form表单验证 异步非阻塞 web聊天室实例 路由系统 路由系统其实就是 url 和 类 的 ...

  6. Python进阶 - 对象,名字以及绑定

    Python进阶 - 对象,名字以及绑定 1.一切皆对象 Python哲学: Python中一切皆对象 1.1 数据模型-对象,值以及类型 对象是Python对数据的抽象.Python程序中所有的数据 ...

  7. Python进阶-继承中的MRO与super

    Python进阶-继承中的MRO与super 写在前面 如非特别说明,下文均基于Python3 摘要 本文讲述Python继承关系中如何通过super()调用"父类"方法,supe ...

  8. Python进阶 - 命名空间与作用域

    Python进阶 - 命名空间与作用域 写在前面 如非特别说明,下文均基于Python3 命名空间与作用于跟名字的绑定相关性很大,可以结合另一篇介绍Python名字.对象及其绑定的文章. 1. 命名空 ...

  9. python进阶学习笔记(一)

    python进阶部分要学习的内容: 学习目标: 1.函数式编程 1.1,什么是函数式编程 函数式编程是一种抽象计算的编程模式 不同语言的抽象层次不同: 函数式编程的特点: python支持的函数式编程 ...

随机推荐

  1. 【ABAP系列】【第六篇】SAP ABAP7.50 之隐式增强

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列][第六篇]SAP ABAP7.5 ...

  2. numpy array和mat的乘法

    1.mat()函数中矩阵的乘积可以使用(星号) *  或 .dot()函数,其结果相同.而矩阵对应位置元素相乘需调用numpy.multiply()函数. a = np.mat([1, 2, 3]) ...

  3. WebMvcConfigurationSupport与WebMvcConfigurer的关系

    大家从网上及源码注释上查到的解释是,在spring中配置WebMvc时有两种方法,一种是继承WebMvcConfigurationSupport,重写里面相应的方法,还有一种是继承WebMvcConf ...

  4. 2019牛客暑期多校训练营(第一场)-E(DP)

    题目链接:https://ac.nowcoder.com/acm/contest/881/E 题意:求可分解成n个AB和m个BA的字符串的个数. 思路: 首先根据贪心思想,前n个A可作为AB的A,后m ...

  5. 如何重装mysql8及初次修改密码

    首先在设置里卸载旧版的mysql 然后把你之前的安装的mysql文件夹整个删掉 然后删除注册表的MySQL信息 安装新版的MySQL 新建并配置my-default.ini文件 如下: [mysqld ...

  6. python之函数、面向对象

    学习python到了函数这一块进度有所放缓,主要还是想理解透彻,毕竟直觉告诉我函数是python是其中的关键,不管是模块.还是包.或者是库,都是建立在若干个函数定义上面. 章节后面就是关于面向对象编程 ...

  7. python-优酷系统管理员视图粗糙版(无详细注释)

    目录 Tank-YouKu(仅管理员功能粗糙版) 优酷系统管理员视图功能 前期准备 创库创表语句 安装pymysql模块 安装DBUtils模块 配置 db_pool 项目架构与数据流向 目录结构 s ...

  8. stm32F429启动时钟配置

    STM32f429在启动时会在startup_stm32f429_439xx.s中调用static void SetSysClock(void)函数.默认使用的是25M晶振,把系统时钟设置为180M. ...

  9. 屏幕的遮挡层,js得到屏幕宽高、页面宽高 (window.screen.availHeight)等--

    window.screen.availWidth 返回当前屏幕宽度(空白空间) ------当手机有输入法的时候,要注意................window.screen.availHeigh ...

  10. mysql添加索引造成的影响

    尽管添加索引可以优化SQL语句的性能,但是添加索引的同时也会带来不小的开销.尤其是在有大量的索引的情况下. mysql添加索引造成的影响如下: 1.DML(数据操作语言)影响,在表上添加缩影会直接影响 ...