草庐IT

private_key

全部标签

ruby-on-rails - 私有(private)方法中的 HGET 不返回哈希

由于某种原因,我的hget没有找到或返回我在公共(public)方法中设置的散列。我不明白为什么。这一切都在一个继承自ApplicationController的Controller中,这是我定义我的redis初始化程序的地方:defredisThread.current[:redis]||=Redis.newend然后在我的Controller中我这样做来设置散列:defreturn_customeremail=params["email"]customer=Customer.find_by(email:email)credit_amount=customer.credit_amou

postgresql - Key - 支持按值搜索的值存储

我正在开发一个ASP.NETWebApi项目。对于我系统的一部分,我需要一个键值存储来存储字符串。键和值都是字符串(尽管它们可以是长字符串)。键和值都是唯一的。最初,我开始使用Redis,问题是我需要在store中不仅通过key而且通过value进行搜索(判断value是否存在,不需要返回keyin这个情况)。基本上,我有两个选择,第一个是为我的项目使用默认数据库-PostgreSQL。否则我应该选择另一个支持上述操作的键值存储。你会建议哪个选项?如果是第二个,哪家店支持这样的操作?哪个选项在性能方面更好? 最佳答案 您需要的不是另

雷迪斯 : Querying based on matching key pattren

我是Redis的新手,我试图通过Redis文档找出这个问题,但没有成功。这是详细信息。假设我插入了如下字符串。Setcategory:1"Men"Setcategory:2"Women"Setcategory:3"Kids"Setcategory:4"Home"Setcategory:5"shoes"...在这种情况下,我想通过查询遵循特定模式的键来获取所有值category:*。Getcategory:*有没有办法像这样获取所有类别? 最佳答案 使用SCAN.SCAN是遍历Redis数据库中的键的唯一安全方法。SCAN将分块键空间

phpRedis - 如何从另一个命名空间推送/获取 key ?

我有一个数据库(db0)和2个命名空间:space1、space2。对于我的代码,我使用的是phpRedis(https://github.com/phpredis/phpredis)库。示例“字符串”:space1_:main_site_products:77-005_expire。我怎样才能从space2得到这个key?或者我怎样才能把key放到另一个空间? 最佳答案 可能您必须使用选项(第二个参数)prefix设置为space1_创建到服务器的新连接,然后通过$redisSpace1->get获取您的key('main_sit

redis - 仅当 key 存在时如何重新分配hset

我使用redis来缓存我的网络博客。我的文章有一个字段“checked”,如果这个字段在数据库中发生变化,我也需要将新值设置为redis,这是代码ifredis_conn.exists("article"):redis_conn.hset("article","checked",1)看起来还可以,但是如果articlekey在exists之后hset之前过期,就会出现一些问题。articlekey只会有一个字段被选中,其他字段如title,content等...都会消失。如何仅当key存在时才进行hset,如果key已过期则什么也不做。 最佳答案

ruby-on-rails - 如何使用 ruby​​ on rails 从 redis 获取所有匹配的 key

如何使用Rubyonrails从存储在redis中的键列表中获取所有匹配的键。我使用的是Ruby2.5.1版本。我使用SCAN来查询匹配的键,但它总是返回2个值而不是5个值。当我通过计数时它返回所有值。那么如何在RubyOnRails代码中传递计数?没有计数返回2值:127.0.0.1:6379>SCAN100match*sa*1)"sasikala(6965)"2)"Zupaensasi(6961)"使用计数返回所有(5)个值:127.0.0.1:6379>SCAN100match*sa*count1001)"Sasai(6965)"2)"Zupaensasi(6961)"3)"Ro

node.js - node.js 和 redis 中的私有(private) channel 。如何?

我写了一个简单的脚本(app.js)来订阅redis的channelvarapp=require('express').createServer(),io=require('socket.io').listen(app);varredis=require("redis");app.listen(8080);//////////////Devenvironment;replacebyPERLinproductionuse.app.get('/',function(req,res){res.sendfile(__dirname+'/index.html');});/////////////

redis - 回收 Redis 中的过期 key

我正在尝试解决Redis中的以下问题。我有一个包含各种可用键的列表:ListMASTER:111A222B333C444D555E我希望能够从列表中弹出一个元素并将其用作具有过期时间的键。到期后,我希望能够将此号码推回MASTER以供将来使用。我没有看到任何明显的方法来做到这一点,所以我正在征求一种有创意的方法。 最佳答案 最好的方法是在key过期的时候让Redis回调,然后采取行动。但是,回调支持仍有待添加(http://code.google.com/p/redis/issues/detail?id=360)。您可以使用包含自定

redis - 增加默认内存和hash,设置redis的key limit

我正在编写一个JAR文件,它从Oracle数据库中获取大量数据并存储在Redis中。详细信息已正确存储,但我在jar中定义的setkey和hashkey在redisdb中受到限制。应该有近200个Hash和300个setkey。但是,在redis中提供键*时,我只得到29个键。请帮助增加redis内存或哈希的限制或设置key存储大小。注意:我改变了哈希最大zipmap条目1024哈希最大zipmap值64手动在redis.conf文件中。但是,它没有反射(reflect)。哪里需要改? 最佳答案 除了内存大小(检查maxmemory

session - express:session store,查询session key redis

app.use(express.session({store:newRedisStore({host:'localhost',port:6379,db:0,pass:'RedisPASS'}),secret:'1234567890QWERTY'}));上面在redis中创建了一个sessionstore。但是session数据的条目是在一些随secret钥中,例如:sess:0t-8-qJG5s0e3w4oGhBjxgAH。获取sessionkey的最佳方法是什么? 最佳答案 这应该可以解决问题:varkey=req.session