问题标签 [redisclient]
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.
python-3.x - 如果我剪断网线并将一个 ReDiS 集群的 master 与该集群的 ReDiS slave 分开,如果 master 的数量增加一倍怎么办?
更具体地说,假设我在网络电缆上绊倒,并将 ReDiS 集群的主服务器从该集群的 ReDiS 从服务器中分离出来。如果主人的数量翻倍,我可以让我的客户只写信给分裂前的“第一”主人吗?
例如,如果我有一个具有以下属性的集群,并且我在子网 192.168 之间的网络电缆上绊倒了。53 .* 和 192.168。105 .* 我最终会得到 6 个大师吗?
192.168 上的 ReDiS 1。192.168 上的53.1 :7000(主)
ReDiS 2。53.1:7001(主)
192.168 上的 ReDiS 3。53.1 :7002(主)
192.168 上的 ReDiS 4。192.168 上的105.2:7000(从属)
ReDiS 5。105.2:7001(从属)
ReDiS 6 在 192.168。105.2 :7002(从机)
我猜 ReDiS 4、ReDiS 5 和 ReDiS 6 会很快让自己成为大师,我最终会得到以下结果:
192.168 上的 ReDiS 1。192.168 上的53.1 :7000(主)
ReDiS 2。53.1:7001(主)
192.168 上的 ReDiS 3。53.1 :7002(主)
=======//卡扣电缆//========
192.168 上的 ReDiS 4。192.168 上的105.2:7000(主)
ReDiS 5。105.2:7001(主)
192.168 上的 ReDiS 6。105.2:7002(主)
另外,当我更换折断的电缆时,我会再次得到以下结果,对吗?
192.168 上的 ReDiS 1。192.168 上的53.1 :7000(主)
ReDiS 2。53.1:7001(主)
192.168 上的 ReDiS 3。53.1 :7002(主)
192.168 上的 ReDiS 4。192.168 上的105.2:7000(从属)
ReDiS 5。105.2:7001(从属)
ReDiS 6 在 192.168。105.2 :7002(从机)
如果我写给我的客户以了解大师“应该”是什么,并让他们只写信给 192.168 中的大师,这是否明智。53. *?
firstThreeMasters
缓解这种情况下问题的一个示例,我是否可以仅在由 的成员表示的 ReDiS 之一成为从属时才更新以下变量?
(虽然我的客户端代码的行为是这个问题的主题,但您认为这属于 serverfault.com 吗?如果是,请在评论中告知或建议移动它。)
c# - Servicestack RedisClient 在被处理后保持连接
我在课堂上为我的 redisclient 使用 servicestack。我有一个 redis 客户端,如下所示:
以下是我如何使用它来确保它在我使用后得到妥善处理:
我的问题是在我处理之后,client
如果我使用相同的处理向 redis 发出另一个请求client
,处理的客户端成功地与 redis 数据库建立另一个连接,但这次连接保留在 CLIENT LIST 中。
redis - redis如何添加用户?
作为我的标题,我想添加一个对我的redis服务器只有读取权限的用户,比如mysql中的几个用户。
但是,我刚刚找到了一种将密码添加到默认值的方法,即修改/etc/redis/redis.conf
line 文件# requirepass foobared
。
任何帮助将不胜感激。谢谢你。
redis - 我可以在 redis-cli 上创建别名命令吗?
我的印象是我总是一遍又一遍地输入相同的命令
而且它非常重复,因为我必须在地图、集合和排序集合之间进行处理(而且客户端不是很好,我不能使用我在终端中使用的相同快捷方式来删除上一个/下一个单词)
有没有办法,比如在 bash 中,编写我们自己的脚本来让我们的生活更轻松?
例如
javascript - 带有redis后端的node js应用程序-如何发送“SCAN”命令
我刚刚为我的节点应用程序安装了一个 redis 客户端。包装信息如下:
我需要在我的节点 js 应用程序中运行以下命令:
但我一直在阅读文档,但不清楚如何做到这一点。到目前为止,使用示例,我编写了以下代码:
但是我还没有找到一个通用的方法可以让我发送各种 Redis 命令。这是我正在使用的参考:
我目前正在谷歌搜索,看看我能找到哪些其他参考资料......但任何建议都将不胜感激。
谢谢
编辑 1
我已经尝试了 send_command,并且我得到了一些东西......但我不太清楚如何查询该对象。感觉好像是空的。。。
这是我尝试过的:
返回:
我也试过这个:
返回:
但我似乎无法弄清楚如何拿到我的钥匙。
编辑 2
我不得不改变这个:
对此:
愚蠢的错误。
javascript - redis 客户端和节点 js - hgetall 方法失败,结果为空
这是我使用 redis cilent 和 node js 的第一天。
我正在尝试复制我通过 node.js 中的 redis-cli 运行的这个命令:
这是nodejs代码:
它返回 null 然后在尝试执行 foreach 时失败。
我也试过:
但我得到相同的结果。
不知道我做错了什么。
编辑 1
我试过这段代码:
结果如下:
然而,在 CLI 中我可以这样做:
c++ - RedisClient 使用带有 EVAL 命令的 Lua 脚本
我正在使用nekipelov/redisclient访问 Redis,我需要通过一次调用 Redis 来检索多个哈希数据以提高性能。
更具体地说,我正在尝试检索多个哈希,如下所示:
其中 script.lua:
但是我很难通过 nekipelov/redisclient 使用 EVAL 命令来表达上述内容。
我在下面尝试了一些东西:
但显然是错误的。
lua - 使用 Lua 脚本的多个 HMSET 到 Redis
由于性能原因,我需要尽量减少到 Redis 的跳数。我从 C++ 代码中多次调用 HMSET,我正在调查是否可以通过使用 Lua 脚本来更改它,并通过一次调用 Redis 来设置多个 Redis 哈希键:
如何将多个哈希键和多个字段/值传递给脚本?
更新 基于 Itamar Haber 的评论,我发现我的问题是 KEYS 和 ARGV 值之间缺少空格的逗号 -
我最终得到了以下脚本:
我不确定它是否可以进一步优化以避免重复字段名称或为每个键传递任意数量的字段/值。
c# - c#的Redis异步调用,当每秒有400-500个请求时,使用“DatabaseAsync”会使响应变慢
当我使用:
称呼:call(client => redisInstance.SetMembersAsync(setName))
它工作正常,但是当有很多请求时,“CPU”使用率会增加;
但在第二种情况下:
称呼:call2(async client => await redisInstance.SetMembersAsync(setName))
CPU 没问题,但响应需要很长时间;
关于这个案例的任何想法?第二种方法有什么问题?
node.js - connect-redis client.unref 不是函数
我正在节点中使用 express-session 设置 redis。
我收到此错误:
此错误指向我的 node_modules 中的 redis-connect 库。
这是我在节点中的基本代码:
然后,
我该如何解决这个错误?谢谢!