tornado-简单的服务器
安装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-简单的服务器的更多相关文章
- tornado的http服务器实现
使用tornado实现的一个简单http服务器:只需要定义自己的处理方法,其他的东西全部交给tornado完成. #coding:utf-8 import tornado.httpserver imp ...
- C#中使用Socket实现简单Web服务器
上一篇博客中介绍了怎样使用socket访问web服务器.关键有两个: 熟悉Socket编程: 熟悉HTTP协议. 上一篇主要是通过socket来模拟浏览器向(任何)Web服务器发送(HTTP)请求,重 ...
- 用nodejs搭建一个简单的服务器
使用nodejs搭建一个简单的服务器 nodejs优点:性能高(读写文件) 数据操作能力强 官网:www.nodejs.org 验证是否安装成功:cmd命令行中输入node -v 如果显示版本号表示安 ...
- 初学Node(六)搭建一个简单的服务器
搭建一个简单的服务器 通过下面的代码可以搭建一个简单的服务器: var http = require("http"); http.createServer(function(req ...
- 搭建无限制权限的简单git服务器使用git-daemon脚本
如果想要用ubantu架设无限制权限(即不适用gitosis)的简单git服务器,实现git库下载clone,push等简单的基本功能, 可以直接使用git-daemon脚本(非常不安全,建议项目代码 ...
- 运用socket实现简单的服务器客户端交互
Socket解释: 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket. Socket的英文原义是“孔”或“插座”.作为BSD UNIX的进程通信机制,取后一种意 ...
- Ubuntu 14.04搭建简单git服务器
/****************************************************************************** * Ubuntu 14.04搭建简单gi ...
- tomcat解析之简单web服务器(图)
链接地址:http://gogole.iteye.com/blog/587163 之前有javaeyer推荐了一本书<how tomcat works>,今天晚上看了看,确实不错,第一眼就 ...
- Linux 下 简单客户端服务器通讯模型(TCP)
原文:Linux 下 简单客户端服务器通讯模型(TCP) 服务器端:server.c #include<stdio.h> #include<stdlib.h> #include ...
- 轻松创建nodejs服务器(1):一个简单nodejs服务器例子
这篇文章主要介绍了一个简单nodejs服务器例子,本文实现了一个简单的hello world例子,并展示如何运行这个服务器,需要的朋友可以参考下 我们先来实现一个简单的例子,hello world ...
随机推荐
- pandas.read_csv 参数 index_col=0
index_col : int or sequence or False, default None 用作行索引的列编号或者列名,如果给定一个序列则有多个行索引. 如果文件不规则,行尾有分隔符,则可以 ...
- IDEA中遇到One of the two will be used. Which one is undefined.
某次启动idea的时候看到控制台提示如下错误 : objc[]: Class JavaLaunchHelper is implemented .0_131.jdk/Contents/Home/bin/ ...
- ZH奶酪:【Python】random模块
Python中的random模块用于随机数生成,对几个random模块中的函数进行简单介绍.如下:random.random() 用于生成一个0到1的随机浮点数.如: import random ra ...
- ballerina 学习 三十 扩展开发(一)
ballerina 主要是分为两大类 基于ballerina 语言开发的,一般是客户端的connector 使用java语言开发的(类似的基于jvm的都可以),一般是注解以及进行构件生成 baller ...
- sql server 表变量存储临时查询数据
对于使用sql server 编写存储过程或者类似的sql 查询的时候我们使用表变量进行临时数据的存储,可以方便我们进行下来的数据处理 表变量的使用类似如下: declare @userinfo ta ...
- JMeter连接数据库(查询出的数据作为参数)
针对Mysql jdbc:mysql://ip:3306/数据库名?useUnicode=true&characterEncoding=utf8&allowMultiQueries=t ...
- 辅助字符串处理类:org.apache.commons.lang3.StringUtils
api 地址:http://commons.apache.org/proper/commons-lang/apidocs/index.html?index-all.html StringUtils 常 ...
- Qt treewidget样式的自定义(转)
这个treewidget样式真是写得让人心碎,主因是那个天杀的表头,真是块古里古怪的硬骨头,令人抓狂,一直找不到给表头设定背景图的方法,让我一度决定弃用tree. 后来表头的属性找到了,下拉条又找不到 ...
- dkhadoop的自然语言处理技术介绍
这段时间一直在接触学习hadoop方面的知识,所以说对自然语言处理技术也是做了一些了解.网络上关于自然语言处理技术的分享文章很多,今天就给大家分享一下HanLP方面的内容. 自然语言处理技术其实是所有 ...
- 胖子哥的大数据之路(四)- VisualHBase功能需求框架
一.引言 大数据在结构化数据存储方面的应用需求越来越明确,但是大数据环境下辅助开发工具的不完善,给数据库管理人员和开发人员带来的不变难以言表,基于此创建了开源项目VisualHBase,同时创建了Vi ...