Redis培训前端开发文档.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
05 Part Five Redis发布订阅 Redis发布订阅 Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 Redis发布订阅 下图展示了频道channel1以及订阅这个频道的三个客户端 —— client2、client5和client1之间的关系: 当有新消息通过publish命令发送给频道channel1时,这个消息就会被发送给订阅它的三个客户端: Redis发布订阅 序号 命令及描述 1 PSUBSCRIBE pattern [pattern ...]? 订阅一个或多个符合给定模式的频道。 2 PUBSUB subcommand [argument [argument ...]]? 查看订阅与发布系统状态。 3 PUBLISH channel message? 将信息发送到指定的频道。 4 PUNSUBSCRIBE [pattern [pattern ...]]? 退订所有给定模式的频道。 5 SUBSCRIBE channel [channel ...]? 订阅给定的一个或多个频道的信息。 6 UNSUBSCRIBE [channel [channel ...]]? 指退订给定的频道。 [root@iZ23ff5atctZ ~]# redis-cli -h localhost -p 6379 localhost:6379> SUBSCRIBE redisChat Reading messages... (press Ctrl-C to quit) 1) "subscribe" 2) "redisChat" 3) (integer) 1 打开多个redis客户端,在redis服务端里订阅名为redisChat的频道: Redis发布订阅-举例说明 [root@iZ23ff5atctZ ~]# redis-cli -h localhost -p 6379 localhost:6379> PUBLISH redisChat "Redis is a great caching technique" (integer) 2 localhost:6379> PUBLISH redisChat "Learn redis by " (integer) 2 现在,我们先重新开启个 redis 客户端,然后在同一个频道 redisChat 发布两次消息,订阅者就能接收到消息。 Redis发布订阅-举例说明 订阅者的客户端会显示如下消息: 1) "message" 2) "redisChat" 3) "Redis is a great caching technique" 1) "message" 2) "redisChat" 3) "Learn redis by " 06 Part Six Redis事务 Redis事务 严格意义来讲,redis的事务和我们理解的传统数据库(如MySql)的事务是不一样的。 Redis中的事务是一组命令的集合。事务同命令一样都是Redis的最小执行单位,一个事务中的命令要么都执行,要么都不执行。 Redis事务的原理是先将属于一个事务的命令发送给Redis,然后再让Redis依次执行这些命令。 Redis中的事务定义 Redis事务 序号 命令及描述 1 DISCARD? 取消事务,放弃执行事务块内的所有命令。 2 EXEC? 执行所有事务块内的命令。 3 MULTI? 标记一个事务块的开始。 4 UNWATCH? 取消 WATCH 命令对所有 key 的监视。 5 WATCH key [key ...]? 监视一个(或多个) key ,如果在事务执行之前这个(或这些) key 被其他命令所改动,那么事务将被打断。 Redis事务 Redis事务可以一次执行多个命令, 并带有如下特性: 批量操作在发送exec命令前被放入队列缓存。 收到exec命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。 在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。 一个Redis事务从开始到执行会经历以下三个阶段: 开始事务。 命令入队。 执行事务。 Redis事务 以下是一个事务的例子: 它先以multi开始一个事务,然后将多个命令入队到事务中,最后由exec命令触发事务,一并执行事务中的所有命令。 localhost:6379> multi OK localhost:6379> set book-name "Mastering C++ in 21 days" QUEUED localhost:6379> get book-name QUEUED localhost:6379> sadd tag "C++"

文档评论(0)

文人教参 + 关注
实名认证
内容提供者

老师教学,学生学习备考课程、成人语言培训课程及教材等为提升学生终身学习竞争力,塑造学生综合能力素质,赋能学生而努力

版权声明书
用户编号:6103150140000005

1亿VIP精品文档

相关文档