Login
网站首页 > 文章中心 > 其它

一 分布式缓存redis概念_redis实现分布式缓存

作者:小编 更新时间:2023-08-16 17:32:41 浏览量:139人看过

什么是NOSQL

NoSQL是不同于传统的关系数据库的数据库管理系统的统称.其两者最重要的区别是NoSQL不使用SQL作为查询语言.NoSQL数据存储可以不需要固定的表格模式.NoSQL是基于键值对的,可以想象成表中的主键和值的对应关系.NoSQL:redis、memcached、mongodb、guava(loadingCache)

什么是Redis

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件. 它支持多种类型的数据结构,如 字符串(strings)、散列(hashes)、 列表(lists)、 集合(sets)、 有序集合(sorted sets)等.

从mysql出发来认识redis

关系型数据库的一个常见用法是存储长期的报告数据,并将这些报告数据用作固定时间范围内的聚合数据.

收集聚合数据的常见做法是:先将各个行插入一个报告表里面, 之后再通过扫描这些行来收集聚合数据, 并更新聚合表中巳有的那些行.

一 分布式缓存redis概念_redis实现分布式缓存

详细图解

一 分布式缓存redis概念_redis实现分布式缓存

查询优化器:join,left join,子查询,依赖子查询进行复杂sql及排序的优化.

Redis和memcached和mysql之间的区别

一 分布式缓存redis概念_redis实现分布式缓存

Memcached默认使用Slab Allocation机制管理内存,其主要思想是按照预先规定的大小,将分配的内存分割成特定长度的块? 以存储相应长度的key-value数据记录,以完全解决内存碎片问题.空闲列表进行判断存储状态.

一 分布式缓存redis概念_redis实现分布式缓存

Redis使用现场申请内存的方式来存储数据,并且很少使用free-list等方式来优化内存分配,会在一定程度上存在内存碎片.

优先查找那块内存是空闲的,找到则分配.【cpu内存连续的,java虚拟机的内存分配类似于redis,直接内存分配(指针碰撞)】

memcached不支持内存数据的持久化操作,所有的数据都以in-memory的形式存储.

redis支持持久化操作.redis提供了两种不同的持久化方法来讲数据存储到硬盘里面

rdb:属于全量数据备份,备份的是数据

aof:append only if,增量持久化备份,备份的是指令?[如:set key, del key]

Memcached 在删除失效主键时也是采用的消极方法,即 Memcached 内部也不会监视主键是否失效,而是在通过 Get? 访问主键时才会检查其是否已经失效.

Redis 定时、定期等多种缓存失效机制,减少内存泄漏

Memcached支持单一数据类型,[k,v]

redis支持五种数据类型.

redis作为数据库和作为内存缓存的两种使用方法

redis作为数据库的使用有什么优缺点优点没有Scheme约束,数据结构的变更相对容易,一开始确定数据类型

抗压能力强,性能极高,10万/qps

缺点没有索引,没有外键,缺少int/date等基本数据类型,

多条件查询需要通过集合内联(sinter,zinterstore)? 和连接间接实现

开发效率低,可维护性不佳

作为mybatis/hibernate二级缓存使用方案,一级缓存:sqlSession,进程缓存,单次链接有效.

图解分析加redis前后的架构区别

一 分布式缓存redis概念_redis实现分布式缓存

以上就是土嘎嘎小编为大家整理的一 分布式缓存redis概念相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章