草庐IT

雷迪斯

全部标签

database - 雷迪斯 : How to set one key equal to the value of another key?

REDIS中是否有任何快速命令可以让我执行以下操作我想将键Y的值设置为等于键X的值。如何从Redis客户端执行此操作。我使用标准的Redis-cli客户端。基本上我正在寻找以下等价物-Y.Val()=X.Val() 最佳答案 您可以使用Lua脚本执行此操作:redis.call('SET',KEYS[2],redis.call('GET',KEYS[1]));return1;KEYS1是源keyKEYS2是目标键下面的例子使用了SCRIPTLOAD创建脚本并使用EVALSHA调用它传递以下参数:从脚本加载返回的SHA1将传递的键数为

php - Laravel Echo 私有(private) channel 与 Laravel echo 服务器 |雷迪斯

场景:一位客户可以将一位客户推荐给另一位客户。每个推荐都需要存储在数据库表行中。收到推荐的客户应该会看到事件通知。创建一个新的推荐并发送事件:$totalRefers=[];foreach($arrayas$to){$refer=newClientReferral;$refer->user_id=$user_id;$refer->by=$by;$refer->to=$to;$refer->save();array_push($totalRefers,$refer);ReferralSent::dispatch($refer);//HereistheEvent}returnrespons

php - Laravel Echo 私有(private) channel 与 Laravel echo 服务器 |雷迪斯

场景:一位客户可以将一位客户推荐给另一位客户。每个推荐都需要存储在数据库表行中。收到推荐的客户应该会看到事件通知。创建一个新的推荐并发送事件:$totalRefers=[];foreach($arrayas$to){$refer=newClientReferral;$refer->user_id=$user_id;$refer->by=$by;$refer->to=$to;$refer->save();array_push($totalRefers,$refer);ReferralSent::dispatch($refer);//HereistheEvent}returnrespons

go - 雷迪斯 : Logging query outputs

我发现redis应用程序从其RESTAPI(使用redis库)返回错误结果(0,而不是5)。在我通过Go运行此查询的代码中,我运行:println("LLENHANDLER")infoL:=HandleError(pool.Get(0).Do("LLEN","xyz")).(int64)lengthJSON:=HandleError(json.MarshalIndent(infoL,"","")).([]byte)print("RETURNLEN="+string(lengthJSON))rw.Write(lengthJSON)这将返回0。但是,如果我从redis-cli(在从机或主机

php - 雷迪斯。 Php 缓存 + Php session

我使用Redis来存储session和存储缓存,我想实现“清除缓存”功能。我有很多问题:1)Redis无法按模式删除("ENTITY_CACHE:*")2)“flushall”同时删除Cache和Session(Session不应该被删除)3)多数据库功能已弃用,所以我可能不会使用“flashdb”4)通过模式("ENTITY_CACHE:*")获取所有键,然后删除每个键-对我来说这是不好的做法,这些键的数量可能超过一百万...$redis->delete($redis->keys('ENTITY_CACHE:*'))我更喜欢的唯一解决方案是:使用Redis的多个实例,分别为Sessi

transactions - 雷迪斯 : SMEMBERS returns 0 after an SMOVE in a MULTI

不确定我是否发现了错误或multi不支持读/写。我无法解释为什么会发生这种情况?多个SMOVEmyset1myset2mykey成员myset2执行好的,+已排队,已排队,1、0SISMEMBER是否从交易期间修改的同一组数据中读取? 最佳答案 问题不是由于MULTI而是由同一组移动引起的:https://github.com/antirez/redis/issues/2517 关于transactions-雷迪斯:SMEMBERSreturns0afteranSMOVEinaMULTI

雷迪斯 : delete keys not starting with prefix

redis(config)或dynomite(config)中是否有任何选项,比如只允许指定的键前缀列表?例子键前缀列表:["abc","xyz"]那么只允许存储具有给定列表前缀的键,而不会存储所有其他键?例子keys_allowed:["abc_cow","abcdog","xyzcat","xyzrat"]keys_not_allowed:["animal-cat","doganimal"] 最佳答案 您可以为此任务实现一个简单的python脚本,示例片段如下:prefix_list=['abc','xyz']keys=["ab

雷迪斯 |复制和公共(public)磁盘存储

我才刚刚开始第一次使用Redis。我浏览了文档,了解到Redis可以在复制模式下使用。但是,我有一些问题仍未得到解答。让我们快速浏览一下用例我有一个Drupal7代码库的集群环境。有两台web服务器web1和web2,两台DB服务器DB1和DB2DB1和DB2以主从模式运行我必须在web1和web2上设置Redis,web1作为主服务器,web2作为从服务器我需要为主从服务器使用相同的后端/磁盘存储是否可以为主从设置相同的后端/磁盘存储?一个解决方案是我在单个服务器上使用Redis,例如在web1上。在这种情况下,web2上的请求使用web1的Redis缓存。在这种情况下,我会受到网络

雷迪斯 : how to create multiple redis queue/message broker

Redis是内存数据库和消息代理。比如我们可以在redis中创建多个数据库,所以,像聪明人一样,如何在redis中创建多个(消息代理/消息队列)? 最佳答案 您可以通过拥有多个列表来创建多个队列:Pattern:ReliablequeueRedisisoftenusedasamessagingservertoimplementprocessingofbackgroundjobsorotherkindsofmessagingtasks.Asimpleformofqueueisoftenobtainedpushingvaluesinto

雷迪斯 : Connection Closed by Server Error with Django

我已经配置了一个Redissentinel组(1个主站和两个自动故障转移的从站),连接都很好,sentinel故障转移正在工作,但是当从应用程序连接时它会抛出以下错误:RequestMethod:GETRequestURL:https://node-app/leaderboard/5790778dd4a8db6171625910/DjangoVersion:1.9.9PythonVersion:2.7.6InstalledApplications:['django.contrib.admin','django.contrib.auth','django.contrib.contentt