Django的全功能异步Redis缓存后端。
django-async-redis的Python项目详细描述
Django异步Redis
简介
django async redis是django的一个功能齐全的redis缓存和会话后端。在
- 免费软件:Apache软件许可证2.0
- 文档:https://django-async-redis.readthedocs.io。在
用户指南
安装
使用pip安装:
$ python -m pip install django-async-redis
配置为缓存后端
要开始使用django async redis,应该将django缓存设置更改为 比如:
^{pr2}$django async redis对连接字符串使用aioredis本机URL表示法,它 允许更好的互操作性,并且具有更“标准”的连接字符串 好吧。一些例子:
- redis://[:password]@localhost:6379/0
- rediss://[:password]@localhost:6379/0
- unix://[:password]@/path/to/socket.sock?db=0
支持三种URL方案:
- redis://:创建正常的TCP套接字连接
- rediss://:创建SSL包装的TCP套接字连接
- unix://创建Unix域套接字连接
有几种方法可以指定数据库编号:
- dbquerystring选项,例如redis://localhost?db=0
- 如果使用redis://方案,则URL的路径参数,例如。 redis://localhost/0
在某些情况下,连接Redis时应该使用的密码 不是URL安全的,在这种情况下,您可以对其进行转义,或者只使用 OPTIONSdict中的便利选项:
CACHES={"default":{"BACKEND":"django_async_redis.cache.RedisCache","LOCATION":"redis://127.0.0.1:6379/1","OPTIONS":{"CLIENT_CLASS":"django_async_redis.client.DefaultClient","PASSWORD":"mysecret"}}}
注意,此选项不会覆盖uri中的密码,因此如果 您已在uri中设置了密码,此设置将被忽略。在
注释
由于大部分代码都是从django redis移植的,所以有一个 蒙凯斯需要那个。在django_async_redis.util中,我们实现了 CacheKey,其中子类str,它帮助我们知道缓存密钥是否 已经创建。由于aioredis,检查缓存密钥是否为str类型 (以及其他人),我必须对该检查进行monkeypatch,以便CacheKey实例能够 也被接受。在
积分
- 嘿,我是安德鲁。我在大学里很忙,但我想帮忙做贡献 到Django的异步生态系统。在
- 很多代码都取自django redis,包括测试。 我只需要把所有东西都移植到asyncio和aioredis。在
- 我使用cookiecutter pypackage生成这个项目。在
- 感谢Python Discord服务器的异步主题聊天 帮助我理解何时在同步函数上使用协同程序 还有@Bast和@hmmmm,因为他们是OG。在
历史
- PyPI的第一个版本。在
- 项目
标签: