【问题标题】:Alternative for Apache Usergrid CountersApache Usergrid 计数器的替代方案
【发布时间】:2017-01-16 07:57:39
【问题描述】:

我正在为一个项目使用 Apache Usergrid。但是我的计数器有一个严重的问题。更新计数器可能需要 30 秒。所以我想使用用户网格计数器以外的东西。我的问题是:

是否有我可以使用分层计数器的 redis、postgresql 或 memcached 结构。或者有没有其他工具可以达到这个目的?

谢谢大家。

【问题讨论】:

    标签: postgresql redis counter usergrid


    【解决方案1】:

    Redis 中没有这样的计数器,但你可以用 lua 脚本实现一个。

    分层计数器

    每次你增加一个名为 "first.second.third" 的计数器,它会自动增加 3 个计数器:"first.second.third", “first.second”和“first”

    分层计数器 lua 脚本:hc.lua

    local key = KEYS[1]
    while key do
        redis.call("incrby", key, ARGV[1])
        key = string.match(key, "(.+)%.")
    end
    

    试试redis-cli

    ./redis-cli --eval hc.lua first.second.third , 2
    (nil)
    ./redis-cli mget first first.second first.second.third
    1) "2"
    2) "2"
    3) "2"
    

    【讨论】:

      猜你喜欢
      • 2015-11-27
      • 2013-11-16
      • 1970-01-01
      • 2014-12-27
      • 1970-01-01
      • 2011-06-20
      • 2015-07-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多