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
from tornado.concurrent import run_on_executor
from concurrent.futures import ThreadPoolExecutor
import tornado.gen
# 定义全局变量
define("port", default=9631)
class getTest(RequestHandler):
executor = ThreadPoolExecutor(200) #200连接数
@run_on_executor #并发
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()
分类:
python学习日记
标签:
tornado
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理