安装tornado pip install tornado

安装sqlalchemy

1.大概代码的解释

import tornado.ioloop  #开启循环,等待访问
import tornado.web class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("hello world") # write 输出到浏览器 先写入缓冲(flush)在一起写入浏览器 # 虚拟机通过application 匹配到url的'/',则执行MainHandler方法
application = tornado.web.Application([
(r"/",MainHandler)
]) if __name__ == '__main__': #直接运行 类名=main, 导入 类名=本身模块名
application.listen(8000) # 监听8000端口
tornado.ioloop.IOLoop.instance().start() #tornado一直待机,收到请求启动服务(阻塞) # 1.端口转发8000
# 2.启动py文件 tornado服务 linux下测试成功否 curl http://127.0.0.1:8000/
# 3. 通过浏览器浏览127.0.0.1:8000

2.运行过程解析

import tornado.ioloop
import tornado.web class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("hello world")
class AHandler(tornado.web.RequestHandler):
def get(self):
self.write("hello world A") # 路由表 匹配路径执行对应路径中的事件
application = tornado.web.Application([
(r"/",MainHandler),
(r'/a',AHandler)
]) if __name__ == '__main__':
application.listen(8000)
tornado.ioloop.IOLoop.instance().start() # ** 客户端访问服务器 可以看成客服端读取服务器的资源,路由就是确定访问的资源路径 # 通过虚拟机启动tornado服务(进行监听) 测试: curl http://127.0.0.1/a
# 通过浏览器启动 http://127.0.0.1/a ,tornado 监听到http://127.0.0.1/a,再执行AHandler

****

路由:

  ** 客户端访问服务器 可以看成客服端读取服务器的资源,路由就是确定访问的资源路径

  路由表 匹配路径执行对应的事件

Handler:

  先简单看成 确定路由后,执行相对的事件

 

tornado-简单的服务器的更多相关文章

  1. tornado的http服务器实现

    使用tornado实现的一个简单http服务器:只需要定义自己的处理方法,其他的东西全部交给tornado完成. #coding:utf-8 import tornado.httpserver imp ...

  2. C#中使用Socket实现简单Web服务器

    上一篇博客中介绍了怎样使用socket访问web服务器.关键有两个: 熟悉Socket编程: 熟悉HTTP协议. 上一篇主要是通过socket来模拟浏览器向(任何)Web服务器发送(HTTP)请求,重 ...

  3. 用nodejs搭建一个简单的服务器

    使用nodejs搭建一个简单的服务器 nodejs优点:性能高(读写文件) 数据操作能力强 官网:www.nodejs.org 验证是否安装成功:cmd命令行中输入node -v 如果显示版本号表示安 ...

  4. 初学Node(六)搭建一个简单的服务器

    搭建一个简单的服务器 通过下面的代码可以搭建一个简单的服务器: var http = require("http"); http.createServer(function(req ...

  5. 搭建无限制权限的简单git服务器使用git-daemon脚本

    如果想要用ubantu架设无限制权限(即不适用gitosis)的简单git服务器,实现git库下载clone,push等简单的基本功能, 可以直接使用git-daemon脚本(非常不安全,建议项目代码 ...

  6. 运用socket实现简单的服务器客户端交互

    Socket解释: 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进程通信机制,取后一种意 ...

  7. Ubuntu 14.04搭建简单git服务器

    /****************************************************************************** * Ubuntu 14.04搭建简单gi ...

  8. tomcat解析之简单web服务器(图)

    链接地址:http://gogole.iteye.com/blog/587163 之前有javaeyer推荐了一本书<how tomcat works>,今天晚上看了看,确实不错,第一眼就 ...

  9. Linux 下 简单客户端服务器通讯模型(TCP)

    原文:Linux 下 简单客户端服务器通讯模型(TCP) 服务器端:server.c #include<stdio.h> #include<stdlib.h> #include ...

  10. 轻松创建nodejs服务器(1):一个简单nodejs服务器例子

    这篇文章主要介绍了一个简单nodejs服务器例子,本文实现了一个简单的hello world例子,并展示如何运行这个服务器,需要的朋友可以参考下   我们先来实现一个简单的例子,hello world ...

随机推荐

  1. 位操作Bit Operation算法题

    一道让你拍案叫绝的算法题   这是一道看完答案会觉得很简单,但做之前很难想到答案的题目!!! 不信? Let us go ! 题目描述 给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均 ...

  2. 对比dfs与bfs的存储机制以及bfs与队列的关系

    dfs由于是利用递归进行遍历,所以每种情况在时空上不会出现冲突,所以可以利用数组将每种情况的各个元素的值进行存储(即存储当前位) 而bfs由于并不是利用递归,不能将每种情况的值进行不冲突地存储,但由于 ...

  3. vi文字处理器

    http://blog.csdn.net/wangloveall/article/details/22649331 摘要:vi是类UNIX命令行接口的标准文字处理软件,也是进行shell脚本程序编写与 ...

  4. weex 知识点

    使用 weex init [project_name] 创建的项目,执行 npm run dev 后,在 public/dist 文件夹里面就生成了两个对应的js,一个是index.web.js, 一 ...

  5. QString和char字符串数组之间的转换 (转)

    做串口通信时,碰到这样的问题,在Qt的界面中,我用QLineEdit对象负责显示发送和接收的文本,对其中的数据进行读取和显示使用的数据类型都是QString:但是,在对串口设备进行读写时,数据使用的形 ...

  6. golang fmt用法举例

    下标与参数的对应 例子如下: package main import ( "fmt" ) func main() { num := 10 fmt.Printf("num: ...

  7. hadoop入门篇-hadoop下载安装教程(附图文步骤)

    在前几篇的文章中分别就虚拟系统安装.LINUX系统安装以及hadoop运行服务器的设置等内容写了详细的操作教程,本篇分享的是hadoop的下载安装步骤. 在此之前有必要做一个简单的说明:分享的所有内容 ...

  8. Java初学几个程序背诵

    1.Hello world class first { public static void main(String[] args){ System.out.println("Hello w ...

  9. springMVC集成CXF快速发布webService

    本文转载自:http://www.cnblogs.com/xiaochangwei/p/5399507.html 继上一篇webService入门之后,http://www.cnblogs.com/x ...

  10. 使用pip安装Scrapy出错

    目录 安装Scrapy出错 安装 使用pip安装(Ubuntu) 错误信息 解决方法 安装Scrapy出错 安装 使用pip安装(Ubuntu) # 安装pip sudo apt install py ...