草庐IT

redis-test

全部标签

lua - 获取错误 : Wrong number of args calling Redis command From Lua script

我想用Redis测试Lua脚本,但我不断收到最简单命令的错误消息。截图如下:为什么这个简单的命令说我没有提供足够的参数? 最佳答案 我没有看到在v3.2的预发布版上运行此代码有任何错误:redis.call("ZADD","user",1,"one")returnredis.call("ZRANGE","user",0,-1)我将one打印到输出窗口。如果我跳过ZADD或ZRANGE调用中的一个参数,我确实会遇到同样的错误,例如在尝试运行redis.call("ZADD","user",1)时。

Laravel 存储 session 到 redis

我想在Laravel中将session存储到redis。我是这样做的:-将session驱动程序更改为“redis”-设置我的redis服务器-然后使用这段代码存储$req->session()->put($email,json_encode($user));代码运行成功。它存储在redis中。但是,我只是简单地将代码添加到1个函数中。为什么其他函数比如testing()/check(),也setex到redis?我什至没有将代码放入该函数。 最佳答案 您只需将sessiondriver设置为redis(在您的.env文件中)并使用

python - 如何用一个线程监听redis的所有订阅 channel ?

我使用python3.6.3,动态构建channel。当客户端连接到webwsocket服务器时,redis_client构建。我有大约1000到100,0000个redis_clients,每个redis_client订阅一些channel。如何使用一个线程或IOLoop监听所有客户端消息?你能给我一个线程可以添加新的pubsub对象来收听更多channel的例子吗?是否有任何解决方案使用协程替换线程在这里等待并且可以将所有协程连接在一起(不能使用joinall因为一些监听器稍后会接近。)我使用的是redis-py库。 最佳答案

redis - 如何使用 StackExchange.Redis 将 Redis 键作为整数插入

我正在使用StackExchange.Redis客户端将我的数据存储在Redis服务器中但是在尝试将键作为整数插入时redisDataBase.StringSet(1,"1");我有异常(exception),虽然在redisdocumentation,Redis键是二进制安全的,这意味着您可以使用任何二进制序列作为键,从“foo”这样的字符串到JPEG文件的内容。空字符串也是一个有效的键。 最佳答案 因为int不能作为key,key应该是string或者byte[]类型。你可以看看thispage查看更多。如果你想要一个整数作为键

redis - redis日志中的 "quorum reached"是什么意思?这在技术上意味着什么?

从技术上讲,redis日志中的“quorumreached”是什么意思,这是问题吗?我是否缺少调整redis.conf参数来修复它的任何内容?Redis日志消息:Markingnodea523100ddfbf844c6d1cc7e0b6a4b3a2aa970abaasfailing(quorumreached).837:M05May10:30:22.216#Clusterstatechanged:fail 最佳答案 该消息表示集群已就该节点的状态达成共识并将其标记为失败。当节点不响应集群的内部聊天协议(protocol)时会发生这种

hash - Redis - 非常大的单条记录(哈希表)

我们在这里有一个巨大的争议:我们在服务器上安装了Redis,我们想在其中保存几种类型的数据:一些零星变量(针对每个用户-所以不仅仅是几条记录)一个非常大的表会随着时间增长争论的焦点是如何保存提到的表格我们都知道Redis的GET时间复杂度是O(1)-所以我们可以将表的每条记录存储为Redis中的一条记录(通过一些前缀来知道它是该表行)或我们可以将表作为单个记录存储在Redis中作为哈希-然后在哈希中访问我们想要的行-这是两个O(1)的步骤。我认为Redis中不断增长的巨大SINGLE记录是灾难性的,但我需要的不仅仅是我对此的看法-我需要Redis专家的回应,指出该方法的错误或证明我错了

python - 如何在redis中存储多个字段并根据某些字段获得前10名的结果

我想从CSV文件中将多个字段存储在redis中我的file.CSV看起来是这样的。SC_CODE,SC_NAME,OPEN,HIGH,LOW,CLOSE,500002,ABBLTD.,1372,1372.40,1339.95,1348.45,500003,AEGISLOGIS,275.00,275.00,261.50,266.70,500008,AMARRAJABA,787.00,788.00,768.05,771.85,我写了下面的代码来往redis中插入数据。importcsvwithopen('file.CSV','r')ascsvfile:csvReader=csv.reade

redis - 在 ec2 上安装开源 Redis 服务器时出错

我正在ec2上安装开源Redis服务器。我已经使用我的pem成功连接到ec2。我已经下载了Redis。发出了以下命令:tarxvzfredis-stable.tar.gz>cdredis-stable.下一步:make&&makeinstall不工作。我收到以下错误:~/redis-stable$make&&makeinstallTheprogram'make'canbefoundinthefollowingpackages:*make*make-guileTry:sudoaptinstallubuntu@ip-xxx.xx.xx.xx:~/redis-stable$继续此安装过程需要

redis - Jedis pubsub >> "redis-cli config set notify-keyspace-events Ex "在 conf 文件中不起作用

我们已经实现了Jedis.expire事件,并倾向于使用KeyExpiredListener类的onPMessage方法进行捕获。KeyExpiredListenerextendsJedisPubSub{......publicvoidonPMessage(Stringpattern,Stringchannel,Stringmessage){....}....}完美运行当我们在Rediscli中设置.thenotify事件时。redis-cliconfigsetnotify-keyspace-eventsEx但正如预期的那样,如果我们重新启动redis服务器,事件监听器将切换回默认值,

node.js - 如何保护 Redis 和 Socket.IO 实时服务器,以便只有经过身份验证的用户才能收听?

我正在构建一个具有聊天功能的网络应用程序。我在后端使用Laravel5.4,在前端使用Angular4。一切正常(意味着我可以广播和接收),但我完全不确定如何保护它。聊天将始终是1对1,因此它是私密的并且必须是安全的。每个聊天室都有一个唯一的ID,但仍然有人可以收听。目前,当我从前端向我的API发出请求时,我正在使用JWT进行身份验证,但我不确定是否可以为此实现类似的东西。我知道我可以使用query选项从前端传递token,但我不确定如何解析它,我也不确定如何验证它确实属于正在尝试的用户访问聊天(我应该向API发出请求以在server.js中进行验证吗?这似乎效率不高。将token的用