Redis + Lua. 我可以在不存储在内存中的情况下返回结果吗?

我在 Redis 环境中执行了以下 Lua 脚本:

    local result = {}
    local comment_ids = redis.call('smembers', 'comment:all')
    for _, key in ipairs(comment_ids) do
        local comment_text = ...
        local article_name = ...
        local user_name = ...

        result[#result+1] = {article_name, user_name, comment_text}
    end
    return result

基本上,这里发生的事情是我们用一些汇总数据(文章名,用户名,评论文本)填充结果表格,并返回它。

就我所知,直到返回语句,这个表格将完全存储在内存中。

我的主要问题是,我可以逐行返回数据而不在内存中存储完整响应吗?

并且,使用 Lua 脚本进行聚合的用途是否合适?(就像我在这里尝试做的那样) 谢谢。

点赞
用户3160475
用户3160475

不可以直播比赛结果。

关于“also”,这也是非常合适的。

2016-08-25 09:09:09