问题标签 [ioredis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7306 浏览

node.js - 如果与redis服务器建立了连接,如何检查ioredis?

我正在编写一个 nodejs 5.10.1 应用程序,并连接到一个 redis 服务器。

我正在使用来自https://github.com/luin/ioredis的 ioredis nodejs 模块。

我似乎无法弄清楚如何检查是否建立了与服务器的连接。

连接到 redis 服务器的代码非常简单:

文档在连接事件下说明了以下内容

不太了解它的含义或如何使用它。有任何想法吗 ?

0 投票
1 回答
1288 浏览

node.js - ioredis (nodejs):使用 lua 脚本调试自定义命令

我编写了一个自定义 lua 脚本,以便可以ioredis在我的节点进程中运行它:

我想在我的内部添加打印,my_commands.lua所以当我运行client.my_command(args)它时它会打印到 nodejs 进程stdout但是当我添加print "hello lua"它时没有(这是有道理的)。

有没有办法将 lua 自定义脚本中的内容打印到我的 nodejs 进程标准输出中?

0 投票
1 回答
947 浏览

redis-cluster - ioredis 客户端是否缓存哈希槽和节点地址之间的映射?

在 Redis 集群教程中,说明了

“一个认真的客户端能够做得更好,并缓存哈希槽和节点地址之间的映射,以直接使用正确的连接到正确的节点。只有在集群配置发生变化时才会刷新映射,例如在故障转移或系统管理员通过添加或删除节点更改集群布局之后。”

ioredis 是否缓存哈希槽和节点地址之间的映射?

0 投票
1 回答
1370 浏览

mysql - 使用 Redis 缓存实时单页应用程序中正在使用的数据

我有一个 Web 应用程序,它具有正常功能、用户设置等,这些都与用户一起存储在 MYSQL 中......

应用程序 a 的特定部分是供用户编辑的数据表。

我想跨多个用户实时制作此表。即多个用户可以打开页面编辑数据并实时查看其他用户编辑表格所做的更改。

我的想法是在 Redis 中缓存表的数据,然后在 redis 中执行所有操作,例如让所有客户端保持最新。

一旦特定表的所有连接都关闭,将数据保存回 mysql 以保持持久性,我知道 Redis 可以用作持久性 NoSQL 数据库,但由于 RAM 有限并且我所有其他数据都存储在 MYSQL 中,mysql 似乎是一个更好的选择.

这是 redis 的正确用例吗?我的想法正确吗?

0 投票
1 回答
1165 浏览

node.js - 无法获取redis数据,但可以写入redis

我有以下设置来设置和检查 redis 的值

现在从上面看,设置值没有问题。根据exists函数,如果值存在,则返回“1”,否则返回“0”。但是当我在 redis 中检查类似的值时,它已经存在时返回为“0”。

添加更多信息

当我第二次尝试检查值时,err=nulldata=0,当它应该是“1”时,因为值已经存在。

同样使用redis-cli命令返回 1

ioredis 配置如下所示

其中 senitelname 是mymaster

0 投票
2 回答
8316 浏览

node.js - How to increment a value in redis?

I am trying to increment a value for a key-value in redis, if the value already exists in redis. For instance if we have

From my understanding, according to the documentation using "incr" should automatically increment that specific value by 1. But i am unable to see this happen successfuly, am i missing something

0 投票
1 回答
384 浏览

node.js - 在单个 Redis 通道上使用 Redis 通道的成本是多少

我有一些代码基本上可以做到这一点 psudocode()

然后我通过该通道与该摄像机进行通信,这使我可以拥有多个引擎。

我还可以构造代码,而不是为每个摄像机创建一个通道。我可以创建一个名为“cameraComms”的频道,并确保每条消息都包含一个相机 ID。

我想知道这两种设计模式是否有任何性能优势/劣势?

如果有帮助,我可以为每个进程注册多达 200 多个摄像头,并且通信跨 3 个运行 3 个 Redis 实例的不同机器。

非常感谢帮助/建议。

0 投票
1 回答
489 浏览

socket.io - 如何在ioredis中检测断开连接的用户

我是 socket.io 和 ioredis 的新手。这段代码运行良好。但是我仍然想不出一种方法来检测断开连接的用户(当用户关闭选项卡时)并向所有客户端显示在线用户。

任何帮助将不胜感激。

为 socket.io-redis 更新

这是通知其他客户端哪个用户已断开连接的好方法吗?

0 投票
0 回答
462 浏览

php - 带有 laravel 5.2 的 Redis:localhost 没有发送任何数据。(laracast 教程)

错误:

localhost 没有发送任何数据。

我在 win 10 和 gitbash 上使用 Laravel 5.2。根据代码,它应该返回“完成”,但事实并非如此。我的文件: routes.php:http: //laravel.io/bin/MkGM0 socket.js:http ://laravel.io/bin/RE09K

0 投票
2 回答
5914 浏览

javascript - 在 laravel 5.2 中使用 socket.io 建立连接时 io.on 不工作

我在连接 io.on 功能时遇到问题(我真的很沮丧)。我正在使用 express、ioredis 和 socket.io。redis 工作正常,但 socket.io 不工作。它不工作。请帮助。

客户端