文档章节

Redis的简单的介绍

yuhuan121
 yuhuan121
发布于 2017/09/01 11:21
字数 502
阅读 4
收藏 0

1、简介

Redis是一个完全开源的,遵守BSD协议的,高性能的key-value数据库,可用作数据库、缓存和消息中间件。

有以下几个特点:

  • redis支持数据的持久化,可将内存中的数据保存在磁盘中,重启的时候可再次加载使用;
  • redis不仅支持简单的key-value类型的数据,还支持string、list、set、hash和zset(有序集合)等五种数据类型;
  • redis支持数据的备份,即master-slave模式的数据备份;

2、数据类型

2.1、String

string是redis最基本的类型,一个key对应一个value,且一个key最大能存储512MB。string是二进制完全的,可以包含任何类型的数据,包括JPG图片或序列化的对象;

输入图片说明

比如:name是一个键,yuhuan就是对应的一个值;

2.2、Hash

redis hash 是一个键名对集合,一个string类型的field和value的映射表,适合用于存储对象;

输入图片说明

上图中的user:1 是键值

2.3、LIst

list是一个简单的字符串列表,可以按照插入顺序,添加元素

输入图片说明

LPUSH key value1 [value2] 

把多个值添加到列表的头部;例子中的key为username value分别为redis、java、spring

LRANGE key start stop 

获取列表指定范围内的元素;

2.4、set

redis 的set是string类型的无序集合。通过哈希表实现,增删查的复杂度都是O(1);

元素具有唯一性,重复添加只有一个;

输入图片说明

2.5、zset

和set类型类似,但每个元素都会关联一个double类型的分数,redis通过这个分数对集合中成员进行从小到大的排序;这个分数可以重复;

输入图片说明

ZADD key score1 member1 [score2 member2] 

向有序集合添加一个或多个成员,或者更新已存在成员的分数;图中的0 2 10 11 就是分数,同一个成员不同的分数,代表着更新分数,成员数不加;

© 著作权归作者所有

共有 人打赏支持
yuhuan121
粉丝 0
博文 36
码字总数 38704
作品 0
佛山
程序员
私信 提问
《Redis实战》下载

首部分对Redis进行了介绍,说明了Redis的基本使用方法、它拥有的5种数据结构以及操作这5种数据结构的命令,并讲解了如何使用Redis去构建文章展示网站、cookie、购物车、网页缓存、数据库行缓...

ddddd8
2017/12/13
0
0
Redis 学习路线

学习和使用 Redis 一般可以分为以下四个阶段: 初学者入门 进阶实战 理解原理 贡献和开发 本文接下来将在四个小节里面分别对这四个阶段进行介绍。 初学者入门 如果你只是对 Redis 感兴趣, ...

JackFace
2016/06/17
80
0
Redis详解(三)------ redis的五大数据类型详细用法

  我们说 Redis 相对于 Memcache 等其他的缓存产品,有一个比较明显的优势就是 Redis 不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。本篇博客我...

ysocean
05/30
0
0
PHP操作redis的两种方式

随着redis使用越来越广泛,各种应用系统几乎都会嵌入redis。当然,PHP也不例外。在我接触到的项目中,主要是使用redis作为缓存服务器。但是对于PHP来说,它本身并不支持redis。所以说这里我们...

梦梦阁
06/06
0
0
ThinkPHP扩展,实现Redis的CURD操作。

接下为将以ThinkPHP作为MVC开发框架,详细介绍Redis的CURD操作。需要说明 的是,在ThinkPHP中本身并不支持Redis开发环境,只支持使用Redis开发简单的数据缓存功能。所以我们必须要通过扩展功...

peasant
2016/11/28
42
0

没有更多内容

加载失败,请刷新页面

加载更多

方之熙博士被任命为RISC-V基金会中国顾问委员会主席,加速RISC-V ISA在中国的应用

中国顾问委员会将就RISC-V基金会的教育和应用推广战略提供指导 今天在中国乌镇举行的世界互联网大会(World Internet Conference)上,RISC-V基金会(RISC-V Foundation)宣布,半导体行业资深人...

whoisliang
13分钟前
0
0
为了用户体验,不要做浏览器兼容

读者看到文章标题也许会感到奇怪,按照通常的经验来说,为了用户体验应该做浏览器兼容,以便让不同的浏览器用户都能有好的体验,从而增加网站的流量,但是我认为做浏览器兼容属于同样的工作重...

Bob2100
13分钟前
0
0
分布式定时任务架构 (二) xxl-job二次开发实践

4个月前,公司有任务调度的需求,需要一周内完成,时间非常紧。 需求有三点: web界面编辑cron表达式,启动,停止任务 接入公司的rpc成本较低,公司有自研的rpc,研发人员希望共用同一套注解 ...

勇哥和你一起学技术
30分钟前
0
0
React和Redux的连接react-redux

通过Redux文档来了解react-redux,在一段时间的实践后准备翻一翻源代码,顺便做些相关的总结。我看的代码的npm版本为v4.0.0,也就是说使用的React版本是0.14.x。 react-redux提供两个关键模块...

前端攻城老湿
51分钟前
1
0
1、Mybatis连接池配置 和 Context.xml的配置

注意: (1)mybatis 3.2 之前 通过 set get 方法 获取相关属性。之后通过属性姓名获取相关关联。 (2)mybatis 映射 优先为 sql 语句中的别名与实体类的属性进行映射。 (3)jndi Java用于调...

KingFightingAn
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部