AWS分布式计数器



我有一个服务的多个实例在多个EC2实例上运行,我需要一个全局计数器,该服务的所有实例都可以访问。计数器需要支持set/reset和increment操作。我的第一次尝试是使用SimpleDB,其中SimpleDB中的一个属性存储计数器值。但事实证明SimpleDB的成本太高,因为我预计访问计数器的请求数量会非常多。对计数器的大多数请求都是get请求,只有极少数请求实际上修改了计数器的值。

我正在考虑的另一个选项是使用memcache来缓存计数器值,并使用SimpleDB作为计数器的持久存储。这将显著减少对SimpleDB的调用次数。但是,由于我的服务中确实没有使用memcache或SimpleDB,因此我似乎需要为一个小功能不必要地管理两个额外的组件。

这个问题有什么标准的解决办法吗?

我们最终决定使用SimpleDB。它非常简单,很好地满足了我们的需求。

Redis有一个持久存储,除非你达到100%的内存使用率,否则你不会遇到问题。你也可以在Redis中备份,主/从和转储数据库。

相关内容

  • 没有找到相关文章

最新更新