在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Redis和MongoDB优缺点对比,MongoDB和Redis都是NoSQL采用结构型数据存储。二者在使用场景中,存在一定的区别,这也主要由于二者在内存映射的处理过程,持久化的处理方法不同。MongoDB建议集群部署,更多的考虑到集群方案,Redis更偏重于进程顺序写入,虽然支持集群,也仅限于主-从模式。
一、Redis优点:
1、读写性能优异支持数据持久化,
支持AOF和RDB两种持久化方式支持主从复制,
主机会自动将数据同步到从机,
可以进行读写分离。
数据结构丰富:
支持string、hash、set、sortedset、list等数据结构。
二、Redis缺点:
Redis不具备自动容错和恢复功能,主机从机的宕机都会导致前端部分读写请求失败,需要等待机器重启或者手动切换前端的IP才能恢复。主机宕机,宕机前有部分数据未能及时同步到从机,切换IP后还会引入数据不一致的问题,降低了系统的可用性。
Redis的主从复制采用全量复制,复制过程中主机会fork出一个子进程对内存做一份快照,并将子进程的内存快照保存为文件发送给从机,这一过程需要确保主机有足够多的空余内存。
若快照文件较大,对集群的服务能力会产生较大的影响,而且复制过程是在从机新加入集群或者从机和主机网络断开重连时都会进行,也就是网络波动都会造成主机和从机间的一次全量的数据复制,这对实际的系统运营造成了不小的麻烦。
Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。为避免这一问题,运维人员在系统上线时必须确保有足够的空间,这对资源造成了很大的浪费。
三、MongoDB优点:
a)弱一致性(最终一致),更能保证用户的访问速度
b)文档结构的存储方式,能够更便捷的获取数
c)内置GridFS,高效存储二进制大对象(比如照片和视频
d)支持复制集、主备、互为主备、自动分片等特性
e)动态查询
f)全索引支持
g)扩展到内部对象和内嵌数组
四、Redis缺点:
a)不支持事务
b)MongoDB占用空间过大
c)维护工具不够成熟
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
使用Python开发游戏可以吗?
用Python开发游戏完全没有问题,游戏里面要用到一些全局变量、加载资源、创建开始界面、开始游戏,舞台层鼠标点击事件的监听器是startGame函数,也就是我们点击开始界面就开始游戏。
7770
2019-07-09 17:50:31
Python常用框架Flask介绍
Flask一直被称为是Python中轻量级的可定制的框架。其核心简单,相比其他框架更加灵活轻便,也更容易掌握。下面我们一起详细的了解一下Flask框架吧。
4962
2020-08-24 11:51:27
Python异常处理
对于用Python编写的程序。当 Python 检测到一个错误时,解释器无法继续执行,反而出现了一些错误的提示,这就是所谓的"Python异常"。因此,为了让我们的程序可以稳定地长久运行,你需要知道如何正确处理异常。
5642
2021-08-13 18:55:16
字符串拼接"+" 运算符怎么使用?起什么作用?
字符串拼接"+" 运算符怎么使用?起什么作用?使用加号运算符连接字符串最简便的方法。利用+直接连接两个字符串常量,虚拟机会直接把这两个字符串连接起来看成一个字符串。
4960
2021-12-29 11:03:43
jQuery选择器可以用来做什么?有几种类型?
jQuery选择器可以用来做什么?有几种?选择器允许对元素组或单个元素进行操作。jQuery元素选择器和属性选择器通过标签名、属性名或内容对 HTML 元素进行选择,我们需要学习 jQuery 选择器如何准确地选取你需要的应用效果的元素。
3523
2021-12-31 10:03:42