tornado框架的简单实用
一.安装模块
pip3 install tornado
二.简单的起服务的方法
import json, datetime
from tornado.web import RequestHandler, Application
from tornado.ioloop import IOLoop
from tornado.httpserver import HTTPServer
from tornado.options import define, options
# 异步
import tornado.gen
# 定义全局变量
define("port", default=9631)
class getTest(RequestHandler):
def get(self):
# logDebug("shoppingCart","get:test请求成功")
return self.write(json.dumps({"code": 200, "message": "请求成功"}, ensure_ascii=False))
class MainHandler(tornado.web.RequestHandler):
@tornado.gen.coroutine
def head(self, *args, **kwargs):
self.write((json.dumps({"Test": "Success"})))
if __name__ == '__main__':
options.parse_command_line()
# 创建一个项目应用,接入web服务器
app = Application([
(r"/test", getTest), # 路由名称 ,getTest 类名
(r"/checkhead", MainHandler), # 健康监测一般公司都要加的哦,写法也是固定的
],
# 也就是需要保证在fork子进程之前IOLoop是未被初始化的。
# autoreload=False,
# debug=False,
settings={
}
)
print('%s--tornado服务启动' % datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'))
# 开始监听端口,提供服务
http_server = HTTPServer(app)
http_server.bind((options.port))
http_server.start() # 默认参数1 启动一个进程
# start(num) num<=0 按照当前os cpu核心数量 进行 进程启动 fork
# num>1 表示通过fork 启动多个子进程
# 在启动IOLoop之前通过start函数设置进程数量,如果设置为0表示每个CPU都启动一个进程。
IOLoop.current().start()
tornado框架的简单实用的更多相关文章
- Tornado框架的简单使用
一.Tornado Web应用程序的结构 import tornado.web class LoginHandler(tornado.web.RequestHandler): def get(self ...
- Android SmartImageView框架的简单实用
特征:根据URL地址装载图像:支持装载通讯录中的图像:支持异步装载:支持缓存: 这个是作者的项目主页,有使用方法.http://loopj.com/android-smart-image-view/ ...
- tornado框架学习及借用有道翻译api做自动翻译页面
趁着这几天有时间,就简单的学了一下tornado框架,简单做了个自动翻译的页面 仅为自己学习参考,不作其他用途 文件夹目录结构如下: . ├── server.py ├── static │ └─ ...
- .NET 跨平台RPC框架DotNettyRPC Web后台快速开发框架(.NET Core) EasyWcf------无需配置,无需引用,动态绑定,轻松使用 C# .NET 0配置使用Wcf(半成品) C# .NET Socket 简单实用框架 C# .NET 0命令行安装Windows服务程序
.NET 跨平台RPC框架DotNettyRPC DotNettyRPC 1.简介 DotNettyRPC是一个基于DotNetty的跨平台RPC框架,支持.NET45以及.NET Standar ...
- C# .NET Socket 简单实用框架,socket组件封装
参考资料 https://www.cnblogs.com/coldairarrow/p/7501645.html 根据.NET Socket 简单实用框架进行了改造,这个代码对socket通信封装还是 ...
- hook框架frida的安装以及简单实用案例
1.下载地址 https://github.co/frida/frida/releases 2.另外两种安装方法 1.Install from prebuilt binaries This is th ...
- 经验分享:10个简单实用的 jQuery 代码片段
尽管各种 JavaScirpt 框架和库层出不穷,jQuery 仍然是 Web 前端开发中最常用的工具库.今天,向大家分享我觉得在网站开发中10个简单实用的 jQuery 代码片段. 您可能感兴趣的相 ...
- 10个简单实用的 jQuery 代码片段
尽管各种 JavaScirpt 框架和库层出不穷,jQuery 仍然是 Web 前端开发中最常用的工具库. 今天,向大家分享我觉得在网站开发中10个简单实用的 jQuery 代码片段. 1.平滑滚动到 ...
- python运维开发(二十二)---JSONP、瀑布流、组合搜索、多级评论、tornado框架简介
内容目录: JSONP应用 瀑布流布局 组合搜索 多级评论 tornado框架简介 JSONP应用 由于浏览器存在同源策略机制,同源策略阻止从一个源加载的文档或脚本获取或设置另一个源加载的文档的属性. ...
随机推荐
- Html学习笔记(二)
Html头部 HTML <link>元素 <link> 标签定义了文档与外部资源之间的关系. <link> 标签通常用于链接到样式表: <head> & ...
- n个点的最长公共子串(别人的模板) poj 3080
没有理解代码.单纯记模板 题意:找最长的公共字串,长度相同就找字典序最小的(这一点wa了我13遍!!!)题解:kmp或者直接暴力列举当公共子串长度小于3时,有特判 #include<map> ...
- 吴裕雄 python 机器学习——半监督学习标准迭代式标记传播算法LabelPropagation模型
import numpy as np import matplotlib.pyplot as plt from sklearn import metrics from sklearn import d ...
- 【游戏体验】Shoot'm(暴打火柴人)
>>>点此处可试玩无敌版<<< 注意,本游戏含有少量暴力元素,13岁以下的儿童切勿尝试本款游戏 生活有压力,学习不如意,你可以尝试这款游戏发泄心中的不满 个人测评 ...
- 7、Java类型转换
类型转换 自动类型转换 自动类型转换指的是容量小的数据类型可以自动转换为空量大的数据类型.(容量大小不是看字节数来定的,是按照类型可以容纳多的数来定的,所以long,可以自动转为float) //特例 ...
- JS数组删除
--------------let items=['a','1',0,2,100,null,NaN,undefined,]; -------------要求以上数据执行后输出['1',0,2,100] ...
- Java编写POST请求
package com.mytesting; import java.io.DataOutputStream; import java.io.InputStream; import java.net. ...
- Python(三)enumerate函数
原文链接:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143177932 ...
- Java IO流详解(六)——转换流
转换流也是一种处理流,它提供了字节流和字符流之间的转换.在Java IO流中提供了两个转换流:InputStreamReader 和 OutputStreamWriter,这两个类都属于字符流.其中I ...
- dp(完全背包)
有 NN 种物品和一个容量是 VV 的背包,每种物品都有无限件可用. 第 ii 种物品的体积是 vivi,价值是 wiwi. 求解将哪些物品装入背包,可使这些物品的总体积不超过背包容量,且总价值最大. ...