1 Star 0 Fork 4

郭先森的独白-A-good-boy/asyncio_demo

forked from Paul/asyncio_demo 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
5.3_fastapi.py 1021 Bytes
一键复制 编辑 原始数据 按行查看 历史
# -*- encoding: utf-8 -*-
"""
@Time : 2020/7/12
@Author : hongboli
"""
import asyncio
import uvicorn
import aioredis
from aioredis import Redis
from fastapi import FastAPI
app = FastAPI()
# 创建redis的连接池
REDIS_POOL = aioredis.ConnectionsPool('redis://127.0.0.1:6379', minsize=1, maxsize=10)
@app.get("/")
def index():
""" 普通操作接口 """
return {"message": "Hello World"}
@app.get("/red")
async def red():
""" 异步操作接口 """
print("请求来了")
await asyncio.sleep(3)
# 连接池获取一个连接
conn = await REDIS_POOL.acquire()
redis = Redis(conn)
# 设置值
await redis.hmset_dict('car', key1=1, key2=2, key3=3)
# 读取值
result = await redis.hgetall('car', encoding='utf-8')
print(result)
# 连接归还连接池
REDIS_POOL.release(conn)
return result
if __name__ == '__main__':
# 注意:第一个参数是文件名
uvicorn.run("5.3_fastapi:app", host="127.0.0.1", port=5000, log_level="info")
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/qgdb/asyncio_demo.git
git@gitee.com:qgdb/asyncio_demo.git
qgdb
asyncio_demo
asyncio_demo
master

搜索帮助