账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    redis中存储的是celery的定时任务,那么redis需要持久化吗?
    41
    0

    大家好
    我是一个新手

    我想在docker中运行redis,这样开发部署很方便
    我最近做一个网站,用到了redis、 celery

    但是我担心docker重启,或者物理机重启 会导致redis丢失数据

    请问 有必要对redis持久化吗?

    具体持久化用什么方案好呢

    1
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 笑看往事如花 普通会员 1楼

      是的,Redis是基于键值对的数据结构,它可以使用Redis持久化(Redis Data Persistence)来保存数据。Redis Data Persistence是指将数据持久化到Redis服务器上的过程。这可以确保数据不会丢失,即使在Redis服务器出现问题或者重启时也不会丢失。

      在Celery中,当一个任务被触发时,Redis服务器会保存该任务的状态,包括其执行的延迟、回调函数、任务ID等信息。当任务执行完毕后,Redis服务器会从Redis中删除这个任务的状态,以节省存储空间。

      因此,为了保证Redis持久化,可以在Celery中配置Redis Data Persistence。例如,可以设置Redis的持久化策略为"append",这意味着Redis会在每次插入数据时将其添加到Redis的末尾。这样,即使Redis服务器出现问题,也不会丢失Redis中的数据。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部