小编Suy*_*ale的帖子

Redis Lua 脚本 - 如何将数组作为参数传递给 Nodejs 中的 Lua 脚本?

我正在从nodejs 调用Lua 脚本。我想传递一个数组作为参数。我在 Lua 中解析该数组时遇到问题。

下面是一个例子:

var script = 'local actorlist = ARGV[1] 
if #actorlist > 0 then
for i, k in ipairs(actorlist) do
   redis.call("ZADD","key", 1, k)
end
end';

client.eval(
     script, //lua source
     0,
     ['keyv1','keyv2']
     function(err, result) {
         console.log(err+'------------'+result);
     }
    );
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误:

“ERR 运行脚本时出错(调用 f_b263a24560e4252cf018189a4c46c40ce7d1b21a):@user_script:1:user_script:1:'ipairs' 的错误参数 #1(预期表,得到字符串)

arrays lua redis

7
推荐指数
1
解决办法
7274
查看次数

在redis中存储用户配置文件的更好的数据结构是什么?

我想将用户的个人资料存储在redis中,因为我必须经常阅读多个用户的个人资料..我目前看到两种选择:

选项1: - 按用户的个人资料存储单独的哈希密钥

  • [hash] - u1 profile {id:u1,name:user1,email:user1@domain.com,photo:url}
  • [hash] - u2 profile {id:u2,name:user2,email:user2 @ domain.com,photo:url}
  • 其中每个用户的id是散列键和配置文件字段以及值JSON序列化的配置文件对象.(或者代替json用户字段 - 值对)

选项2: - 使用单个哈希密钥存储所有用户配置文件

  • [hash] - users-profile u1 {id:u1,name:user1,email:user1@domain.com,photo:url}
  • [hash] - users-profile u2 {id:u2,name:user2,email:user2 @domain.com,photo:url}
  • 在users-profile散列键,用户的id字段和值JSON序列化的配置文件对象中的位置.

请告诉我哪个选项最好考虑以下内容:

  1. 性能
  2. 内存利用率
  3. 读取多个用户的配置文件 - 对于批处理我应该能够读取1-100,101-200用户的个人资料
  4. 更大的数据集 - 如果有数百万用户配置文件怎么办?

paging hash json redis

5
推荐指数
1
解决办法
863
查看次数

如何在JavaScript中使用Google Cloud Pub / Sub?

我正在评估google cloud pub / sub以将消息发送到我的Java脚本客户端应用程序(离子,角度应用程序)。我找不到用于在javascript中订阅发布/订阅消息的任何示例代码。

JFYI:我在服务器端有nodejs。

javascript node.js google-cloud-pubsub

4
推荐指数
1
解决办法
2850
查看次数

标签 统计

redis ×2

arrays ×1

google-cloud-pubsub ×1

hash ×1

javascript ×1

json ×1

lua ×1

node.js ×1

paging ×1