使用Redis缓存Django

bzzcjhmw  于 2022-10-31  发布在  Redis
关注(0)|答案(2)|浏览(242)

我已经实现了django缓存使用redis以下博客:https://realpython.com/caching-in-django-with-redis/
所以我按照这个,安装了软件包,添加了

CACHES = {
"default": {
    "BACKEND": "redis_cache.RedisCache",
    "LOCATION": "redis://127.0.0.1:8000/",
    "OPTIONS": {
        "CLIENT_CLASS": "django_redis.client.DefaultClient"
    },
    "KEY_PREFIX": "example"
}

}
然后在意见。

from django.conf import settings
from django.core.cache.backends.base import DEFAULT_TIMEOUT
from django.views.decorators.cache import cache_page

CACHE_TTL = getattr(settings, 'CACHE_TTL', DEFAULT_TIMEOUT)

然后为函数添加了装饰器

@cache_page(CACHE_TTL)
@login_required_dietitian
def patient_profile(request, id):
    data = {}
    return render(request, 'profile.html', {'data':data})

然后,在运行服务器时出现此错误
redis.exceptions.ConnectionError:服务器已关闭连接。
我是新的这样的缓存技术,有什么建议如何解决这个问题?

qnzebej0

qnzebej01#

您的配置指定Redis在端口8000上运行,默认情况下,Redis在端口6379上运行。看起来它试图连接您的Django应用,因此出现连接错误。Redis作为一个独立的进程运行,在端口6379上监听请求。

zpqajqem

zpqajqem2#

首先按照https://computingforgeeks.com/how-to-install-redis-on-fedora/指南安装redis到你的系统中并启动它。在我的例子中它是fedora并且在页面上有一个到Ubuntu的链接。
将LOCATION上的端口从8000更改为6379。现在,您将启动并运行。
我建议使用this来获得有关redis缓存的教程

相关问题