Python 使用Redis的Django缓存

Python 使用Redis的Django缓存,python,django,redis,django-cache,django-redis,Python,Django,Redis,Django Cache,Django Redis,我在以下博客中使用redis实现了django缓存: 所以我按照这个安装了这个软件包, 加入 } 然后在视图中 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', DEFA

我在以下博客中使用redis实现了django缓存:

所以我按照这个安装了这个软件包, 加入

}

然后在视图中

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)
然后为函数添加了decorator

@cache_page(CACHE_TTL)
@login_required_dietitian
def patient_profile(request, id):
    data = {}
    return render(request, 'profile.html', {'data':data})
然后我在运行服务器时出现了这个错误

redis.exceptions.ConnectionError:服务器已关闭连接


我是这种缓存技术的新手,有什么建议可以解决这个问题吗?

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

好的,起初我以为我应该输入本地主机端口号。但现在我将端口号更改为6379,并收到以下错误:“错误10061连接到127.0.0.1:6379。无法建立连接,因为目标计算机主动拒绝它。”你知道吗?你启动Redis服务器了吗?Redis本身必须与Django一起启动。启动它:命令行上的redis server。现在收到此错误,但找不到任何简单的解决方案:“'redis-server'未被识别为内部或外部命令、可操作程序或批处理文件。”因此,您安装了redis吗?如果是这样,它找不到它的原因是您没有将redis server添加到环境变量中。检查这个,向下滚动到它提到环境变量的地方,并遵循这个步骤。
@cache_page(CACHE_TTL)
@login_required_dietitian
def patient_profile(request, id):
    data = {}
    return render(request, 'profile.html', {'data':data})