首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django-redis持久化json数据

django-redis持久化json数据
EN

Stack Overflow用户
提问于 2022-06-23 14:59:27
回答 1查看 167关注 0票数 0

我有一个小django网站,控制一个解剖穹顶和房子自动化。在启动项目时,加载3个json文件:继电器、条件和家庭自动化。为了避免经常读和写到pi4的ssd,我将json文件加载到REDIS中(在应用程序启动时,请参阅下面)。我已经有红葡萄酒在码头运行,因为这个项目使用芹菜。

我的问题是,在将json加载到REDIS之后的几分钟内,它就会清除缓存中的数据。

我在应用程序中以字典(dict)的形式加载json文件。

代码语言:javascript
复制
cache.set("REDIS_ashtreeautomation_dict", dict, timeout=None)

并设定

代码语言:javascript
复制
CACHES = {
"default": {
    "BACKEND": "django_redis.cache.RedisCache",
    "LOCATION": "redis://redis:6379",
    "OPTIONS": {
        "CLIENT_CLASS": "django_redis.client.DefaultClient",
        "SERIALIZER": "django_redis.serializers.json.JSONSerializer",
        "TIMEOUT": None
    }
}

}

如果dockers倒闭,我不需要数据持久化,我也不需要db函数。缓存这些文件是理想的,但我需要它们在服务器的整个生命周期中“保持活着”。

谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-06-23 17:16:05

谢谢凯文。

移动超时解决了这个问题。

代码语言:javascript
复制
CACHES = {
"default": {
    "BACKEND": "django_redis.cache.RedisCache",
    "LOCATION": "redis://redis:6379",
    "TIMEOUT": None,
    "OPTIONS": {
        "CLIENT_CLASS": "django_redis.client.DefaultClient",
        "SERIALIZER": "django_redis.serializers.json.JSONSerializer",
    }
}

}

我将包括一些代码来捕获长期的REDIS‘驱逐’策略(即重新加载json数据)。我不想钻研红葡萄酒码头。

谢谢

伊恩

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72732364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档