Django的全功能异步Redis缓存后端。

django-async-redis的Python项目详细描述


Django异步Redis

https://img.shields.io/pypi/v/django-async-redis.svghttps://img.shields.io/travis/Andrew-Chen-Wang/django-async-redis.svgDocumentation Status

简介

django async redis是django的一个功能齐全的redis缓存和会话后端。在

要求

用户指南

安装

使用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的第一个版本。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java Spring REST API JSON在postman中显示,但在测试中未“看到”   java如何以编程方式检查旋转设备?   java力穷举开关   amazon web services DynamoDB从Java更新列表失败   java Android studio IDE更改波斯注释字体   java如何将postgresql添加到OpenShift Spring应用程序?   java RecycleView分页是否在末尾添加新项?   如何通过java获取移动设备信息?   java为什么Apache Commons StringEscapeUtils escapeXML10不能在groovy中工作?   函数式编程java curry现有的静态函数   java与JList的合作