App Engine Memcache在所有实例之间共享一个值

时间:2016-04-03 20:33:32

标签: java google-app-engine memcached

我需要在所有实例中共享Google App Engine中的单个MemCache密钥。该键用于以高速率(500 /秒)读取和递增。

Google建议不要使用“热键”,他们建议使用数据存储。 由于我无法通过数据存储区中的单个命令递增或递减值,因此对我来说无法使用。

我还有其他选择吗?

由于

1 个答案:

答案 0 :(得分:2)

您正在寻找的是Sharding Counters。

基本上,您需要一些CounterShard实体来存储价值。您将增量步骤分解为独立计数器,然后在需要时加载并求和所有值(它很便宜)。

500 / sec 我猜你需要多达100个分片,但我建议你做几个实验来找到最佳价值。

使用它有一个完整的例子:https://cloud.google.com/appengine/articles/sharding_counters