HTML5技术

Redis中的数据结构与常用命令 - 雪飞鸿(3)

字号+ 作者:H5之家 来源:H5之家 2017-06-04 11:03 我要评论( )

以对score求和的方式进行并集运算 Sort 对LIST、SET、ZSET三种数据结构中的值进行排序操作,默认是正序排列。 Publish Subscribe 发布/订阅模式 命令作用 PUBLISH向指定的频道发送二进制字符串消息(binary string


 

以对score求和的方式进行并集运算


Sort

对LIST、SET、ZSET三种数据结构中的值进行排序操作,默认是正序排列。


 

Publish & Subscribe

发布/订阅模式

命令作用

PUBLISH 向指定的频道发送二进制字符串消息(binary string messages)

SUBSCRIBE 订阅指定的频道已接受该频道发送的消息

UNSUBSCRIBE 取消订阅某频道

下图中展示的是使用redis-cli和stackexchange.redis进行的pub/sub测试效果:


 

Transcation

命令作用

MULTI 表示事务的开始

EXEC 执行事务中包含的命令

Redis中事务(调用MULTI表示事务的开始)所包含的命令会被放到一个队列中,当遇到EXEC命令后会不间断的依次执行队列中的命令。


 

Redis中的事务和数据库中的事务不同,它没有回滚操作。

Redis中的事务,若某行命令执行失败不会影响其它命令的执行(下图中第二行命令执行失败,第一、三行成功执行):


 

StackExchange.Redis

StackExchange.Redis驱动是用C#语言写的Redis驱动,它的API在语义上和Redis命令是类似的,在这里列举下驱动中常用的几个类:

  • ConnectionMultiplexer
    表示一组相关的Redis服务器链接,StackExchage.Redis官方建议尽可能复用该对象。

  • IDatabase
    该接口中定义了对5种数据结构进行操作的方法

  • RedisDatabase
    IDatabase的实现类

  • RedisKey
    存储到Redis中的key

  • RedisValue
    存储到Redis中的value,可用于表示STRING、LIST、SET结构中存储的数据

  • HashEntry
    表示一个HASH键值对

  • SortedSetEntry
    表示一个ZSET元素

  • ISubscript
    订阅接口

  • RedisChannel
    表示发布/订阅中的频道名

  • Subscription
    ConnectionMultiplexer中的私有密封类,封装和订阅相关的信息

  • 结语

    Redis是一种NoSql数据库,Redis服务器上默认有16个数据库,Redis常被拿来和Memcache做比较,网上有很多这方面的文章,各位看官请自行搜索。本文着重介绍了Redis中的5中数据结构和一些常用的命令,对于第三方驱动则一笔带过,因为在了解了Redis本身之后,可以很快的掌握第三方驱动的使用。

    推荐工具
  • Redis Desktop Manager

  •  

    推荐图书
  • Redis in Action

  • 参考文章

    An introduction to Redis data types and abstractions

    版权声明

    本文为作者原创,版权归作者雪飞鸿所有。 转载必须保留文章的完整性,且在页面明显位置处标明原文链接。

    如有问题, 请发送邮件和作者联系。

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • 【AngularJS中的自定义服务service VS factory VS provider】---它们的区别,你知道

      【AngularJS中的自定义服务service VS factory VS provider】---它们

      2017-05-08 13:04

    • 记一次企业级爬虫系统升级改造(六):基于Redis实现免费的IP代理池 - 彩色铅笔

      记一次企业级爬虫系统升级改造(六):基于Redis实现免费的IP代理池

      2017-03-21 09:00

    • Session分布式共享 = Session + Redis + Nginx - 傲翼飞寒

      Session分布式共享 = Session + Redis + Nginx - 傲翼飞寒

      2017-03-10 16:00

    • HTML5中的新事件 - zxyGo

      HTML5中的新事件 - zxyGo

      2017-03-10 14:00

    网友点评
    >