为什么要用Redis,Redis有哪些优缺点?Redis如何实现扩容?

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qiuchaoxi/article/details/81011841

优点:

1 读写性能优异,从内存当中进行IO读写速度快。

2 支持数据持久化,支持AOF和RDB两种持久化方式(由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁 盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两种方式进行持久化,一种是RDB持久化:指在指定的时间间隔内将内存中的数据集快照写入磁盘,实际操作过程是fork一个子进程,先将数据集写入临时文件,写入成功后,再替换之前的文件,用二进制压缩存储。还有一种是AOF持久化:以日志的形式记录服务器所处理的每一个写、删除操作,查询操作不会记录,以文本的方式记录,可以打开文件看到详细的操作记录。)

3 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。

4 数据结构丰富:除了支持string类型的value外还支持string、hash、set、sortedset、list等数据结构。

5 Redis是单线程多CPU,这样速度更快。因为单线程,没有线程切换的开销,不需要考虑加锁释放锁,也就没有死锁的问题。单线程-多路复用IO模型。效率高。

 

缺点:

1 主从同步,如果主机宕机,宕机前有一部分数据没有同步到从机,会导致数据不一致。

2.主从同步,数据同步会有延迟。

3.读写分离,主机写的负载量太大,也会导致主机的宕机

 

扩容:

1.集群,使用代理,达到集群的目的。

2.主从同步,读写分离。

 

 

展开阅读全文

没有更多推荐了,返回首页