侧边栏壁纸
博主头像
fynn博主等级

我们应该有恒心,尤其是要有自信心,必须相信自己是有能力的,而且要不惜任何代价把这种能力发挥出来。

  • 累计撰写 50 篇文章
  • 累计创建 21 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Sanic使用Redis

fynn
2022-11-09 / 0 评论 / 0 点赞 / 231 阅读 / 265 字 / 正在检测是否收录...

安装库

pip3 install sanic redis

初始化Sanic的Redis连接池

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# File    : app.py
from sanic import Sanic
from redis import Redis, ConnectionPool

app = Sanic(__name__)

# 设置静态文件目录
app.static("/static", "./static")


@app.listener("before_server_start")
async def before_server_start(app):
    app.ctx.redis = Redis(connection_pool=ConnectionPool().from_url(
        url="redis://127.0.0.1", port=6379, db=2, password="PASSWORD", encoding="utf-8", decode_responses=True))


@app.listener("after_server_stop")
def after_server_stop(app):
    app.ctx.redis.close()
    app.ctx.redis.wait_closed()

Redis使用

get值

with app.ctx.redis.get() as redis:
    response = redis.get(key)

set值

with app.ctx.redis.get() as redis:
    redis.set(key, value, timeout)
set(name, value, ex=None, px=None, nx=False, xx=False)
  在Redis中设置值,默认,不存在则创建,存在则修改
  参数:
       ex,过期时间(秒)
       px,过期时间(毫秒)
       nx,如果设置为True,则只有name不存在时,set操作才执行
       xx,如果设置为True,则只有name存在时,set操作才执行
0

评论区