问题标签 [django-redis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
427 浏览

python-3.x - “RedisCache”对象没有属性“键”

我在缓存中的键是这样的 /notifications/api/v1/faq 缓存中的每个键都以 / 开头

当我尝试打印密钥时出现此错误

0 投票
1 回答
356 浏览

django - 当服务器开始在django rest框架中运行时如何检查redis连接是否可用,如果没有连接则返回错误响应

我正在执行多个 API 调用,但在每个 API 调用中,我都在检查 redis 连接是否可用。仅显示以下 API 调用之一。

RedisCache 类:

如何在服务器启动时仅检查一次 redis 连接,如果连接不可用,则在服务器上返回 Json 响应。

0 投票
0 回答
227 浏览

django - 如何使用 Django Rest Framework 有效管理缓存(Redis)?

我们已经使用 Django 和 Django RestFramework 已经有很长一段时间了,在 Redis 中管理缓存面临着很多挑战,我们的模型看起来像

(1) 学校(学校详情)

(2) 教师(FK 学校,提供教师的所有详细信息)

(3) 学生(FK 教师,附有教师的所有详细信息)

我们的用户将在 School 上操作 CRUD 操作,例如 /get_all_info 应该返回一个 JSON 对象,例如,

此外,整个系统非常动态,每个组件都在不断变化。大约 90% 的请求属于上述类型。

我们正在考虑添加保存后信号以每次为学校删除完整缓存,就像学生在保存后更新一样,首先我们会找到他-她的学校,然后删除该学校的缓存。有没有更优雅/更好的方法?有没有可以处理所有这些的python库?

0 投票
0 回答
65 浏览

django - 列出任务后,celery worker 不加载任何内容,任务状态始终为pending

芹菜.py文件:

任务.py 文件:

views.py(当服务器开始运行时,将调用 debug_task1())

设置.py

服务器结果:

工人结果:

列出任务后,工作人员不显示任何内容(例如“连接到 redis”)。此外,任务的状态始终为待处理

我究竟做错了什么?

0 投票
0 回答
25 浏览

redis - Redis r.lock(key) 正在改变我的键值

我正在尝试用锁实现redis缓存。我将在缓存中查找一个键,如果它不存在,那么我会启动一个锁并设置值。

发生的事情是我的 print-1 语句按预期给出了 None 。但是我的第二个打印语句,我之前正在运行锁,理想情况下应该不给出任何值,因为我还没有设置值。但它给出了一些垃圾值,阻止我进入第二个 if 条件

0 投票
0 回答
112 浏览

django - 使用 Redis 缓存的 Django DRF API 列表调用中没有新记录

我有一个 Django REST API,我使用 Redis 作为缓存后端。

代码

它在 get 调用中缓存数据,但是当我插入新记录时,该新记录未显示在列表中(来自缓存)。

例如:如果数据库中有 4 条记录,它们被正确缓存,但是当我插入新记录时,它没有显示 get 调用。

0 投票
2 回答
425 浏览

python - 在 Django Rest Framework 中缓存序列化程序响应

我正在使用序列化程序来获取特定资源的相关数据,如下所示:

会话序列化器.py

我还在 SessionViewSet 中使用 DRF 缓存装饰器,这似乎工作正常。但是,当实例有更新和/或任何相关实例(如用户)有更新时,我不能使缓存数据无效。

是否有关于如何在更新时清除缓存数据的标准做法或文档?

0 投票
1 回答
53 浏览

django - 如何在 redis 服务器中查看 django-ratelimit 设置的密钥?

我正在使用以下

我正在尝试设置速率限制以限制POST调用请求的次数。

我的设置中有这个:

我有这个views.py。(一个非常简化的版本)

速率限制按预期工作。但我看不到任何密钥存储在 redis 服务器中

我还尝试使用 django shell 搜索密钥

我不确定我是否已正确设置它并且它会在生产中工作。另外,缓存值在哪里设置?

0 投票
1 回答
109 浏览

django - django_redis、channels_redis、asgi_redis和redis服务器有什么区别?

我是 Django 的新手,现在我正在学习 Django 与 Channels 的异步。我注意到有些程序员在他们的项目中使用 channels_redis,有些使用 django_redis,有些使用 asgi_redis,我在 google 中找到了 redis 服务器。这些库之间有什么区别吗?

0 投票
0 回答
22 浏览

django - 如何针对特定情况刷新缓存的查询集

我有一个使用 redis 作为缓存的 django 应用程序,一切正常,除了在我使用某种过滤器的视图中,我的逻辑是:我有一个用于过滤器字段的表单,当用户填写它们并单击提交按钮时II 在 post 方法中处理过滤器,在这种情况下,我得到缓存查询的返回,而不是应用的过滤器。在这些情况下,如何强制刷新或正确使用过滤逻辑?