redis 其他特性
1、消息订阅与发布
subscribe my1 订阅频道
psubscribe my1* 批量订阅频道,订阅以my1开头的所有频道
publish my1 hello 在指定频道中发布消息,返回值为接受到信息的用户数
类似于桌面右下角的小广告
->所以这里的频道没有创建这一说
2、多数据库
redis默认有16个数据库,0, 1, 2....15
默认所有的数据操作,都是在0号数据库上操作的
切换数据库:select 数据库名
把某个键值对进行数据库移植:move key 数据库名,在当前数据库该键值对就不存在了
清空当前数据库:flushdb
清空服务器-所有数据库:flushall
3、事务
mysql事务:目的是为了保证数据完整性,安全
redis事务:目的是为了进行redis语句的批量化执行
multi 开启事务
exec 提交事务
discard 事务回滚
->当事务中某几个语句出错,程序不会自动进行事务回滚,其他语句正常执行
4、基础命令
ping 如果返回PONG,代表连接成功,否则会返回no connected
quit 退出客户端,和ctrl+c一致
dbsize 返回当前数据库中的key数量
info 可以看到服务器和连接客户端的详细详细
5、持久化
持久化:把数据保存在硬盘上
关系型数据库 mysql,任何增删改语句,都是在硬盘上做的操作
内存(兔子):高效,断电数据就会消失
硬盘(乌龟):读写速度慢于内存,断电数据依旧存在
非关系型数据库redis:
默认情况下,所有的增删改,数据都是在内存中进行操作
断电以后,redis的部分数据会丢失,丢失的数据就是保存在内存中的数据
6、redis的两种持久化策略,RDB
这是默认的策略,照快照,保存的是一种状态
20G数据 ---> 几kb快照
优点:
1)快照保存数据速度极快,还原也快
2)适用与灾难备份,例如redis服务器所在机房失火,我要赶紧儿将redis数据备份
缺点:
1)小内存机器不适合使用
RDB机制符合要求就会照快照。(随时随地启动),会占用一部分系统资源,
例如我有1G的数据,他会先将1G的数据先复制过来(此时内存就被占用2G了),进行压缩、备份、运算-->转化成dump.rdb文件
这个动作是突然的
Linux 4G
3G数据,这时进行rdb机制,很有可能因为内存不足直接宕机(宕机后,服务器会关闭,属于非正常关闭)
使用场景:内存比较充裕的计算机
->在安装目录下默认有dump.rdb
RDB何时进行照快照:
服务器正常关闭时,照快照;redis-cli shutdown
key满足一定条件时,照快照;
save 900 1
save 300 10
save 60 10000
每15分钟至少有1个key发生变化,则照快照保存
7、redis的两种持久化策略,AOF
这是使用日志功能保存数据操作
1)同步规则:
每秒同步:安全性低,比较节省系统资源->怎么个理解法
每修改同步:只要有key变化语句,就进行AOF保存数据,比较安全,但是极为浪费效率
不同步(默认):不安全
2)AOF操作:只会保存导致key发生变化的语句
3)AOF配置:
3.1)将appendonly no 改成 appendonly yes,这一步时开启AOF机制;
3.2)策略的选择:将appendfsync always的注释去掉,每次key变化就进行保存
优点:
持续性占用极少量的内存空间,只有--KB,会专门开辟一个AOF日志程序;性价比很高哟
缺点:
1)日志文件会特别大,不适用于灾难备份;最终数据不多,但是过程语句复杂;
例子:1G数据,由10G的语句生成
2)恢复效率远远低于RDB
适用场景:内存比较小的计算机,所以大公司会选择用默认RDB的方式
redis 其他特性的更多相关文章
- redis 高级特性 不要太好用
Redis高级特性及应用场景 redis中键的生存时间(expire) redis中可以使用expire命令设置一个键的生存时间,到时间后redis会自动删除它. 过期时间可以设置为秒或者毫秒精度. ...
- 【Redis】二、Redis高级特性
(三) Redis高级特性 前面我们介绍了Redis的五种基本的数据类型,灵活运用这五种数据类型是使用Redis的基础,除此之外,Redis还有一些特性,掌握这些特性能对Redis有进一步的了解, ...
- Redis高级特性及应用场景
Redis高级特性及应用场景 redis中键的生存时间(expire) redis中可以使用expire命令设置一个键的生存时间,到时间后redis会自动删除它. 过期时间可以设置为秒或者毫秒精度. ...
- redis的keys常用操作及redis的特性
redis的keys常用操作 1.获得所有的keys: keys * 2.可以模糊查询 keys:keys my* 3.删除keys:del mymkey1 mykey2 4.是否存在keys:ex ...
- Redis高级特性介绍及实例分析
转自:http://www.jianshu.com/p/af7043e6c8f9 Redis基础类型回顾 String Redis中最基本,也是最简单的数据类型.注意,VALUE既可以是简单的St ...
- Redis 高级特性
Redis 数据结构 Redis 常用的数据类型主要有以下五种: String Hash List Set Sorted set Redis 内部使用一个 redisObject 对象来表示所有的 k ...
- Redis的特性以及优势(附官网)
NoSQL:一类新出现的数据库(not only sql) 泛指非关系型的数据库 不支持SQL语法 存储结构跟传统关系型数据库中的那种关系表完全不同,nosql中存储的数据都是KV形式 NoSQL的世 ...
- Redis GEO 特性在 LBS 中的应用总结
什么是LBS LBS(Location Based Service),基于位置的服务. Redis和GEO Redis 是最热门的 nosql 数据库之一,它的最大特点就是快.所以在 LBS 这种需要 ...
- redis新特性
摘自<redis 4.xcookbook> 从实例重启同步] 故障切换同步] 4.0之前从实例主键过期bug redis4新特性 Memory Command Lazy Free PSYN ...
- Redis的特性及运用
Redis特性 一个产品的使用场景肯定是需要根据产品的特性,先列举一下Redis的特点: 读写性能优异 持久化 数据类型丰富 单线程 数据自动过期 发布订阅 分布式 这里我们通过几个场景,不同维度说下 ...
随机推荐
- Map dependencies with code maps
https://docs.microsoft.com/en-us/visualstudio/modeling/map-dependencies-across-your-solutions Instal ...
- 【JLOI 2011】 不重复的数字
[题目链接] 点击打开链接 [算法] 本题用map很好写,笔者用的是哈希的写法 [代码] #include<bits/stdc++.h> using namespace std; #def ...
- linux 远程杀掉进程
转自http://blog.csdn.net/tengdazhang770960436/article/details/53906263 第一步:获取进程号 pid=$(ssh root@$remot ...
- hdu 1480
钥匙计数之二 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
- 在Centos中yum安装和卸载软件的使用方法(转载)
转自: http://gzmaster.blog.51cto.com/299556/72278 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任. ...
- bzoj 3612: [Heoi2014]平衡【整数划分dp】
其实就是-n~n中求选k个不同的数,和为0的方案数 学到了新姿势叫整数划分,具体实现是dp 详见:https://blog.csdn.net/Vmurder/article/details/42551 ...
- Activiti6.0教程 28张表解析 (三)
使用Activit的朋友都知道Activiti对应的有28张表,今天我们就来说下Activit中28张表对应的含义是什么? 如何创建表? 在Activiti中创建表有三种方式,我们依次来看下: 一.通 ...
- shiro错误:Subject does not have permission [user:select]
使用的是jdbcRealm,在数据库中有相应的权限 错误日志: org.apache.shiro.authz.UnauthorizedException: Subject does not have ...
- [Usaco2008 Dec]Patting Heads 轻拍牛头
Description 今天是贝茜的生日,为了庆祝自己的生日,贝茜邀你来玩一个游戏. 贝茜让N(1≤N≤100000)头奶牛坐成一个圈.除了1号与N号奶牛外,i号奶牛与i-l号和i+l号奶牛相邻.N号 ...
- [poj3744] Scout YYF I【概率dp 数学期望】
传送门:http://poj.org/problem?id=3744 令f(i)表示到i,安全的概率.则f(i) = f(i - 1) * p + f(i - 2) * (1 - p),若i位置有地雷 ...