一直有一个好奇,如果网站用 redis 作为唯一的数据库,会怎样?

2020-06-28 14:56:15 +08:00
 zzzmh

其实我心里大概是有一个答案的,就是怕断电丢 5 分钟左右的数据?
如果不考虑断电的情况呢,因为阿里云腾讯云我用了好多年都没遇到过断电,而且就丢失 5 分钟,概率上还没有中勒索病毒大。
其他的我暂时也想不到什么坏处,顶多是逻辑要自己写,大表拆分起来要动动脑。
好处不用说了,速度起飞,内存占用低。
所以还是想请教一下各位大佬,到底有没有可行性

10572 次点击
所在节点    Redis
41 条回复
kiracyan
2020-06-28 14:58:38 +08:00
本来就可以这样做 只不过看你能承担的风险是多少而已
Jooooooooo
2020-06-28 15:01:09 +08:00
运维过好几 T 的 redis 集群?
monsterxx03
2020-06-28 15:02:12 +08:00
你的数据库大小不能超过机器内存喽,开了 aof 也就丢一秒,还有 redis 那个事务不堪用
pastgift
2020-06-28 15:04:49 +08:00
怎么会内存占用低呢? redis 的内存也是内存呀
比如正常 mysql 里存了 10 个 G 数据,换 redis 岂不是要 10 个 G 内存?
你真的只考虑数据全内存里读写,sqlite 放内存,或者 mysql 内存表,加个定时刷到硬盘不就行了
takemeaway
2020-06-28 15:06:42 +08:00
哪来的丢 5 分钟? 可以不丢的。 就是看你内存够不够。
luckyrayyy
2020-06-28 15:06:44 +08:00
不光断电,硬件坏掉的问题?进程挂掉?系统意外死了?另外备份也不是五分钟吧,你完全可以调更低。要是丢数据对你来说完全不重要,那当然只用 redis
GM
2020-06-28 15:07:31 +08:00
看你是用来干嘛的了,个人网站随意。
公司正式用途的,别瞎想。
vivipure
2020-06-28 15:11:37 +08:00
数据库只是一种方式,你用个 json 或者 txt 文件存数据也没问题啊,只是效率问题。
lshero
2020-06-28 15:36:06 +08:00
对运维的要求挺高的,之前的公司大部分项目就是 Redis
所有的 Redis 实例每一次存取都有监控
阻塞操作热点 key 之类的问题过一会儿就可以反馈给业务部门
DBA 对 RDB 文件解析恢复使用的贼溜
xuanbg
2020-06-28 15:39:19 +08:00
楼主说的速度起飞,大概就是 30 毫秒的响应时间变成 3 毫秒。这点提升其实体验并没有那么明细,所以根本不重要。
realpg
2020-06-28 15:39:47 +08:00
会很爽
技术实力不够,就会很酸爽
zzzmh
2020-06-28 15:43:48 +08:00
多谢回答,了解了,先开个虚拟机试试水好了。redis 一直也就作为缓存在用,之前没有足够的深入了解。
defunct9
2020-06-28 15:47:05 +08:00
@lshero 请教怎么监控每次存取的,还有阻塞热点 key 怎么监控
est
2020-06-28 15:53:38 +08:00
redis 自己的官网和博客就是跑在一个纯 redis 上的。所以呢

/t/652191
/t/652220
/t/652232
/t/652217
liuguang
2020-06-28 15:59:31 +08:00
小数据量可以用用,海量数据的时候内存限制了
swulling
2020-06-28 16:00:51 +08:00
redis 主从配好 断电也只损失同步延迟内的数据
lshero
2020-06-28 16:01:42 +08:00
@defunct9 自己搞了个代理呗,把分片监控的问题都解决了,然而代理的可用性又是下一个问题了。
不过业务都允许用 RDB 恢复数据了代理的高可用性也没有这么重要了。
jifengg
2020-06-28 16:17:34 +08:00
redis 不是“关系型”数据库,所以有“关系型”的业务的时候,只用 redis 来存数据读数据,不管是开发还是运行其实都不是很好。开发就不用说了,可能需要在存的时候就存很多对应关系。读的时候,需要读好几次才能读完你要的数据。所以,还是看具体需求了。
没有什么“关系型”业务的,很适合,比如上面说的博客。
像一般的什么管理系统,就不太适合。
yinjunjian0
2020-06-28 17:45:20 +08:00
脱离场景没什么好讨论的吧
DreamH
2020-06-28 18:28:20 +08:00
陌陌一直都是用 redis 当数据库,主要是操作方便,抗量简单

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/685323

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX