Redis 在实际开发中起到的作用详解

栏目: 数据库 · 发布时间: 6年前

内容简介:redis是一种支持Key-Value等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等场景。该数据库使用ANSI C语言编写,支持网络,提供字符串、哈希、列表、队列、集合结构直接存取,基于内存,可持久化。

redis是什么

redis是一种支持Key-Value等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等场景。该数据库使用ANSI C语言编写,支持网络,提供字符串、哈希、列表、队列、集合结构直接存取,基于内存,可持久化。

Redis 在实际开发中起到的作用详解

支持的语言

Redis 在实际开发中起到的作用详解

redis的应用场景有哪些

1、会话缓存(最常用)

2、消息队列,比如支付

3、活动排行榜或计数

4、发布、订阅消息(消息通知)

5、商品列表、评论列表等

redis数据类型

Redis一共支持五种数据类:string(字符串)、hash(哈希)、list(列表)、set(集合)和zset(sorted set 有序集合)。

1) string(字符串)

它是 redis 最基本的数据类型,一个key对应一个value,需要注意是一个键值最大存储512MB。

Redis 在实际开发中起到的作用详解

(2) hash(哈希)

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

Redis 在实际开发中起到的作用详解

(3) list(列表)

是redis简单的字符串列表,它按插入顺序排序

Redis 在实际开发中起到的作用详解

(4) set(集合)

是string类型的无序集合,也不可重复

Redis 在实际开发中起到的作用详解

(5) zset(sorted set 有序集合)

是string类型的有序集合,也不可重复

sorted set中的每个元素都需要指定一个分数,根据分数对元素进行升序排序,如果多个元素有相同的分数,则以字典序进行升序排序,sorted set 因此非常适合实现排名

Redis 在实际开发中起到的作用详解

redis服务相关的命令

Redis 在实际开发中起到的作用详解

slect #选择数据库(数据库编号0-15)

quit #退出连接

info #获得服务的信息与统计

monitor #实时监控

config get #获得服务配置

flushdb #删除当前选择的数据库中的key

flushall #删除所有数据库中的key

redis的发布与订阅

redis发布与订阅(pub/sub)是它的一种消息通信模式,一方发送信息,一方接收信息。

下图是三个客户端同时订阅同一个频道

Redis 在实际开发中起到的作用详解

下图是有新信息发送给频道1时,就会将消息发送给订阅它的三个客户端

Redis 在实际开发中起到的作用详解

redis持久化

redis持久有两种方式:Snapshotting(快照),Append-only file(AOF)

Snapshotting(快照)

1、将存储在内存的数据以快照的方式写入二进制文件中,如默认dump.rdb中

2、save 900 1

#900秒内如果超过1个Key被修改,则启动快照保存

3、save 300 10

#300秒内如果超过10个Key被修改,则启动快照保存

4、save 60 10000

#60秒内如果超过10000个Key被修改,则启动快照保存

Append-only file(AOF)

1、使用AOF持久时,服务会将每个收到的写命令通过write函数追加到文件中(appendonly.aof)

2、AOF持久化存储方式参数说明

appendonly yes 

#开启AOF持久化存储方式

appendfsync always 

#收到写命令后就立即写入磁盘,效率最差,效果最好

appendfsync everysec 

#每秒写入磁盘一次,效率与效果居中

appendfsync no 

#完全依赖OS,效率最佳,效果没法保证。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

模式识别

模式识别

(希)Sergios Theodoridis、(希)Konstantinos Koutroumbas / 电子工业出版社 / 2010-2 / 75.00元

本书全面阐述了模式识别的基础理论、最新方法以及各种应用。模式识别是信息科学和人工智能的重要组成部分,主要应用领域有图像分析、光学字符识别、信道均衡、语言识别和音频分类等。本书在完美地结合当前的理论与实践的基础上,讨论了贝叶斯分类、贝叶斯网络、线性和非线性分类器设计、上下文相关分类、特征生成、特征选取技术、学习理论的基本概念以及聚类概念与算法。与前一版相比,增加了大数据集和高维数据相关的最新算法,这......一起来看看 《模式识别》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器