Redis特性和应用场景.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Redis特性和应用场景

原文链接: /link?url=vTse2CnXgjxsSRu5PiSSJgCa8KBSKxy4srjrx3O3zAOxZCWeYVTx4HCOkQUuJXUXMnAtcQ00mH9S8hYFU528VHMpedM85yxHiiBt_ifnQmC Redis特性和应用场景 Redis特性 速度快 Redis使用标准C编写实现,而且将所有数据加载到内存中,所以速度非常快。官方提供的数据表明,在一个普通的Linux机器上,Redis读写速度分别达到81000/s和110000/s。 数据结构 可以将Redis看做“数据结构服务器”。目前,Redis支持5种数据结构。 持久化 由于所有数据保持在内存中,所以对数据的更新将异步地保存到磁盘上,Redis提供了一些策略来保存数据,比如根据时间或更新次数。数据超过内存,使用swap,保证数据; memcacache不能持久化,mongo是部分在内存; 自动操作 Redis对不同数据类型的操作是自动的,因此设置或增加key值,从一个集合中增加或删除一个元素都能安全的操作。 支持多种语言 Redis支持多种语言,诸如Ruby,Python, Twisted Python, PHP, Erlang, Tcl, Perl, Lua, Java, Scala, Clojure等。 主-从复制 Redis支持简单而快速的主-从复制。 官方提供了一个数据,Slave在21秒即完成了对Amazon网站10Gkey set的复制。 Sharding 很容易将数据分布到多个Redis实例中,但这主要看该语言是否支持。目前支持Sharding功能的语言只有PHP、Ruby和Scala。 redis数据使用方式 redis 的作者antirez曾笑称其为一个数据结构服务器(data structures server),redis的所有功能就是将数据以其固有的几种结构保存,并提供给用户操作这几种结构的接口。我们可以想象我们在各种语言中的那些固有数据类型及其操作。 HYPERLINK /tags/redisRedis的几种使用方式 HYPERLINK /tags/stringsStrings HYPERLINK /tags/hashsHashs HYPERLINK /tags/listsLists Sets Sorted Sets HYPERLINK /tags/pubsubPub/Sub HYPERLINK /tags/transactionsTransactions Redis的七种特性以及适合的应用场景: Strings Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字。使用Strings类型,完全实现目前 Memcached 的功能,并且效率更高。还可以享受Redis的定时持久化,操作日志及 Replication等功能。除了提供与 Memcached 一样的get、set、incr、decr 等操作外,Redis还提供了下面一些操作: 获取字符串长度 strlen 往字符串append内容 append 设置和获取字符串的某一段内容 setrange getrange 设置及获取字符串的某一位getrange 批量设置一系列字符串的内容 String是最简单的数据类型,一个key对应一个Value,String是二进制安全的。它可以包含任何数据,图片或者其他序列化后的对象 方法说明特性set设置key对应的的值为String类型的value get获取对应key对应的String的值,如果不存在返回nil setnx设置可以为对应的值为String类型的value,如果key存在返回0不覆盖,不存在返回1nx的意思为not exist Set the value of a key, only if the key does not existsetex置key对应的值为String类型的value,并指定此键值对应的有效期 SETEX key seconds value例:setex mykey 10 你好setrange设置key的value的子字符串setrange key 位置 替换的内容 如果替换内容没有原value长,则原value剩余的内容将被保留mset一次设置多个key的值,成功返回ok,失败返回0,要成功都成功,要不成功全部失败。mset key1 内容一 key2 内容二msetnx一次设置多个key的值,成功返回ok,失败返回0,不覆盖已经存在的值,要成功都成功,要失败都失败。 getset设置key的

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档