Redis--学习记录
炮姐的呱太
这个作者很懒,什么都没留下…
展开
-
Redis 列表(List)
List 简介: Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)。 一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)require 'redis'#list 添加元素redis.rpush 'logs','some logs'redis.rpush 'logs','another l原创 2016-01-19 11:48:57 · 563 阅读 · 0 评论 -
redis的存取速度多快
require 'redis'redis = Redis.new#存值st = Time.now10000.times{|i| redis.rpush('speed','speed #{i}')}et = Time.nowp (et - st)#取值st = Time.nowredis.lrange('speed',0,-1)et = Time.nowp (et-st)1000.t原创 2016-01-25 17:19:37 · 8757 阅读 · 0 评论 -
一个简单的爬虫
获取bit.edu的一个校内新闻的一页数据,将结果存放到redis中require 'redis'require 'httpclient'require 'hpricot'require 'json'class String def gsub_html self.gsub(/\r|\t|\n/,"").gsub(/<(\S*?)[^>]*>.*?|<.*? \/>/,"原创 2016-01-25 17:05:22 · 499 阅读 · 0 评论 -
Redis 事务
点击查看简介来源Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证:事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。事务是一个原子操作:事务中的命令要么全部被执行,要么全部都不执行。 一个事务从开始到执行会经历以下三个阶段: 开始事务命令入队 执行事务require 'redis'$redi原创 2016-01-22 17:46:18 · 426 阅读 · 0 评论 -
Redis 发布订阅
图片来源:w3c 下面是模拟redis的订阅和发布1.pub.rbrequire 'redis'redis = Redis.new5.times do redis.publish('redis_sub',"hola!!!!!!!")#想redis_sub频道发布消息end2.sub.rbrequire 'redis'require 'json'redis = Redis.newred原创 2016-01-21 17:36:33 · 462 阅读 · 0 评论 -
Redis HyperLogLog
描述来自:Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的优点是,在输入元素的数量或者体积非常非常大时,计算基数所需的空间总是固定 的、并且是很小的。在 Redis 里面,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个不同元素的基 数。这和计算基数时,元素越多耗费内存就越多的集合形成鲜明对比。但是,因为 HyperLo原创 2016-01-21 16:48:10 · 363 阅读 · 0 评论 -
Redis 有序集合(sorted set)
Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿原创 2016-01-21 16:17:17 · 671 阅读 · 0 评论 -
Redis 集合(Set)
Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员require 'redis'#向集合添加一个或多个成员redis.sadd('set','redis')redis.sa原创 2016-01-21 11:39:08 · 489 阅读 · 0 评论 -
Redis 字符串(String)
require 'redis'redis = Redis.new#设置 获取redis.set('string','about redis string')p redis.get('string')#返回key中字符串值的子字符redis.set('string','This is my test key')p redis.getrange('string',0,-1)p redis.g原创 2016-01-20 14:41:59 · 492 阅读 · 0 评论 -
Redis 哈希(Hash)
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。Redis 中每个 hash 可以存储 232 - 1 键值对(40多亿)require 'redis'redis = Redis.new#同时将一个或多个 field-value (域-值)对设置到哈希表 key 中p redis.hmset('hash','ok','ok?')p r原创 2016-01-20 17:18:15 · 946 阅读 · 0 评论 -
Redis的连接
require 'redis'require 'json'redis = Redis.new #指定主机名,端口号,和db#redis = Redis.new(:host=>"127.0.0.1",:port=>6379,:db=>1) #通过URL 去连接redis#redis = Redis.new(:url=>"redis://:xx@x.x.x.x:6380/1") # 连接redis原创 2016-01-19 14:13:09 · 3005 阅读 · 0 评论 -
Redis 键(key)
# Redis 键(key): Redis 键命令用于管理 redis 的键require 'redis'require 'date'require 'time'redis = Redis.new#创建 redis.set('redis_key',"it's time to learn redis" )#获取p redis.get('redis_key')#删除redis.del('r原创 2016-01-19 17:05:49 · 606 阅读 · 0 评论