Redis之简单事务、持久化机制
2018-03-27 16:53
411 查看
一、redis的事务非常简单(简单了解)
使用方法如下:首先是使用:multi 命令打开事务,然后进行设置,这时设置的数据都会放入队列里进行保存;
最后使用:exec 命令执行,把数据依此存储到redis中;
使用 :discard 命令取消事务。
注:redis的事务不能保证同时成功或失败进行提交或回滚,所以redis的事务目前还是比较简单的。
二、redis持久化机制
redis是一个支持持久化的内存数据库,也就是说redis需要经常给内存中的数据同步到硬盘来保证持久化。redis有两种持久化方式:
1、snapshotting(快照)默认方式,将内存中以快照的方式写入到二进制文件中,默认为dump.rdb,可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果超过m个key则修改就自动做快照。
snapshotting设置:save 900 1 #900秒内如果超过1个key被修改,则发起快照保存;
save 300 10 #300秒内如果超过10个key被修改,则发起快照保存;
save 60 10000
2、append-only file(aof缩写)的方式(有点类似于oracle日志)由于快照方式是在一定时间间隔做一次,所以可能发生redis意外down的情况就会丢失最后一次快照后的所有修改的数据,aof比快照方式更好的持久化性,是由于aof在使用时,redis会将每一个收到的写命令都通过write函数追加到命令中,当redis重新启动时会重新执行文件中保存的写命令来在内存中重建这个数据库的内容,这个文件在bin目录下:appendonly.aof(aof不是立即写到硬盘上,可以通过配置文件修改强制写到硬盘中)
aof设置:
将appendonly no 改为:appendonly yes #启动aof
(了解)持久化方式有三种:A、appendfsync always(收到写命令就立即写入到磁盘,效率最慢,但是保证完全的持久化);B、appendfsync everysec(每秒钟写入磁盘一次,在性能和持久化方面做了很好的折中);C、appendfsync no(完全依赖os,性能最好,持久化没有保证);
三、发布与订阅
命令:subscribe【频道名】;#进行订阅监听;
命令:publish【频道名】【发布内容】;#进行消息发布;
使用方法如下:首先是使用:multi 命令打开事务,然后进行设置,这时设置的数据都会放入队列里进行保存;
最后使用:exec 命令执行,把数据依此存储到redis中;
使用 :discard 命令取消事务。
注:redis的事务不能保证同时成功或失败进行提交或回滚,所以redis的事务目前还是比较简单的。
二、redis持久化机制
redis是一个支持持久化的内存数据库,也就是说redis需要经常给内存中的数据同步到硬盘来保证持久化。redis有两种持久化方式:
1、snapshotting(快照)默认方式,将内存中以快照的方式写入到二进制文件中,默认为dump.rdb,可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果超过m个key则修改就自动做快照。
snapshotting设置:save 900 1 #900秒内如果超过1个key被修改,则发起快照保存;
save 300 10 #300秒内如果超过10个key被修改,则发起快照保存;
save 60 10000
2、append-only file(aof缩写)的方式(有点类似于oracle日志)由于快照方式是在一定时间间隔做一次,所以可能发生redis意外down的情况就会丢失最后一次快照后的所有修改的数据,aof比快照方式更好的持久化性,是由于aof在使用时,redis会将每一个收到的写命令都通过write函数追加到命令中,当redis重新启动时会重新执行文件中保存的写命令来在内存中重建这个数据库的内容,这个文件在bin目录下:appendonly.aof(aof不是立即写到硬盘上,可以通过配置文件修改强制写到硬盘中)
aof设置:
将appendonly no 改为:appendonly yes #启动aof
(了解)持久化方式有三种:A、appendfsync always(收到写命令就立即写入到磁盘,效率最慢,但是保证完全的持久化);B、appendfsync everysec(每秒钟写入磁盘一次,在性能和持久化方面做了很好的折中);C、appendfsync no(完全依赖os,性能最好,持久化没有保证);
三、发布与订阅
命令:subscribe【频道名】;#进行订阅监听;
命令:publish【频道名】【发布内容】;#进行消息发布;
相关文章推荐
- Redis的持久化机制
- redis的持久化和缓存机制
- redis持久化机制
- Redis的持久化机制
- redis 事务 锁机制
- redis 持久化机制AOF/RDB详解
- NoSQL数据库之Redis数据库管理六 (Redis的高级应用之事务处理、持久化操作、pub_sub、虚拟内存)
- 分布式缓存技术redis学习系列(三)——redis高级应用(主从、事务与锁、持久化)
- Redis入门之浅谈aof持久化机制
- 【Redis缓存机制】9.快照持久化和AOF持久化
- Redis持久化机制和恢复机制
- Redis入门到精通-Redis简单事务
- Redis提供的持久化机制(RDB和AOF)
- Redis 笔记与总结6 Redis 高级应用之 事务处理、持久化操作、pub_sub、虚拟内存
- 07_NoSQL数据库之Redis数据库:Redis的高级应用之事务处理、持久化操作、pub_sub、虚拟内存
- Redis持久化机制
- [置顶] 搭建一个简单的redis-sentinel(哨兵机制)集群
- 深入理解Redis的持久化机制和原理
- redis(三) 持久化机制
- Redis pub/sub机制在实际运用场景的缺陷&&模拟JMS消息发布订阅的持久化特性