关于redis,学会这8点就够了
1、redis是什么
redis是一种支持Key-Value等多种数据结构的存储系统。可用于缓存、事件发布或订阅、高速队列等场景。该数据库使用ANSI C语言编写,支持网络,提供字符串、哈希、列表、队列、集合结构直接存取,基于内存,可持久化。
2、支持的语言
3、redis的应用场景有哪些
1、会话缓存(最常用)
2、消息队列,比如支付
3、活动排行榜或计数
4、发布、订阅消息(消息通知)
5、商品列表、评论列表等
4、redis数据类型
Redis一共支持五种数据类:string(字符串)、hash(哈希)、list(列表)、set(集合)和zset(sorted set 有序集合)。
(1)string(字符串)
它是redis最基本的数据类型,一个key对应一个value,需要注意是一个键值最大存储512MB。
(2)hash(哈希)
redis hash是一个键值对的集合, 是一个string类型的field和value的映射表,适合用于存储对象
(3)list(列表)
是redis简单的字符串列表,它按插入顺序排序
(4)set(集合)
是string类型的无序集合,也不可重复
(5)zset(sorted set 有序集合)
是string类型的有序集合,也不可重复
sorted set中的每个元素都需要指定一个分数,根据分数对元素进行升序排序,如果多个元素有相同的分数,则以字典序进行升序排序,sorted set 因此非常适合实现排名
5、redis服务相关的命令
slect #选择数据库(数据库编号0-15)
quit #退出连接
info #获得服务的信息与统计
monitor #实时监控
config get #获得服务配置
flushdb #删除当前选择的数据库中的key
flushall #删除所有数据库中的key
6、redis的发布与订阅
redis发布与订阅(pub/sub)是它的一种消息通信模式,一方发送信息,一方接收信息。
下图是三个客户端同时订阅同一个频道
下图是有新信息发送给频道1时,就会将消息发送给订阅它的三个客户端
7、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,效率最佳,效果没法保证
8、redis 性能测试
自带相关测试工具
实际测试同时执行100万的请求
来源:华为云社区 作者:小柴不加胡
相关文章
- Redis protected-mode属性解读
- ASP.NET Core Authentication in a Load Balanced Environment with HAProxy and Redis
- golang中使用Redis
- python 关于celery的异步任务队列的基本使用(celery+redis)【采用配置文件设置】
- Redis 阻塞内之内在因素 持久化与huge_page
- Redis 就是让你彻底搞懂redis集群
- [Bug]redis问题解决(MISCONF Redis is configured to save RDB snapshots)
- 深入理解Spring Redis的使用 (五)、常见问题汇总
- 〖Python 数据库开发实战 - Python与Redis交互篇④〗- 利用 redis-py 实现集合与有序集合的常用指令操作
- 深入理解 Redis Template及4种序列化方式__spring boot整合redis实现RedisTemplate三分钟快速入门
- Redis集群搭建与简单使用
- 004-redis-命令-2、哈希操作命令,3、列表操作命令
- Redis主从同步
- redis_03 _ 高性能IO模型:为什么单线程Redis能那么快
- php操作redis
- 饿了么这样跳过Redis Cluster遇到的“坑”
- Redis-3.2.0集群配置(redis cluster)
- 关于python语言使用redis时,连接是否需要关闭的问题
- ASP.NET Core微服务(六)——【.Net Core操作redis】StackExchange.Redis
- 【redis】Redis为什么能抗住10万并发?
- redis单线程原理___Redis为何那么快-----底层原理浅析
- Redis_18_Redis客户端-服务端架构