redis 本身有持久化,为什么还要写进 mysql

2025-05-10 03:35:01
推荐回答(3个)
回答1:

本身的持久化,会可能丢失数据,因为本身的持久化,不是实时的,是数据先在内存,再定时的保存到硬盘来达到持久化,当然,这个定时的时间相隔,是可以配置的。

这个配置的时间,如果太短,那么使用redis的效率就低,如果长了,那么可能丢失的数据就会多,所以,要根据自己的业务来取得一个均衡。

保存到数据库的,可以理解为比较保险,redis出现问题,还可以从数据库中恢复过来

从两者的擅长角度来看,数据库擅长的是存储和检索
redis相当于内存数据库,擅长的地方是读

结合两个的擅长点来使用,才是王道。

海枫科技

回答2:

我的理解:
1、mysql支持sql查询,可以实现一些关联的查询以及统计;
2、redis对内存要求比较高,在有限的条件下不能把所有数据都放在redis;
3、mysql偏向于存数据,redis偏向于快速取数据,但redis查询复杂的表关系时不如mysql,所以可以把热门的数据放redis,mysql存基本数据

看项目用在哪个地方吧,根据各自的所长结合起来才好用。

回答3:

如果你数据有20G,只使用Redis,就需要占用20G内存
如果Redis+MySQL,Redis只储存热数据,MySQL储存冷数据,那么就不需要把全部数据放内存里了。内存里只有热数据。20G数据储存在硬盘。