Google App Engine - Memcache - 我在这种情况下丢失数据的可能性有多大?

时间:2010-03-11 02:25:23

标签: java google-app-engine

我想在每个请求中存储数据(用户查看了我网站的哪个页面)。

对于每个请求,我将把数据(~100个字节)放在memcache中。

每隔5秒钟,我会将数据从memcache保存到数据存储区。

在这种情况下数据丢失的罕见程度如何?

3 个答案:

答案 0 :(得分:2)

你基本上不能信任memcache来保存你的数据 。毕竟,它只是一个缓存,并且可以选择在数据感到不安时逐出数据。

话虽如此,在您的特定情况下,最糟糕的情况是您将丢失5秒的数据。如果您只是存储“pageview”数据,我认为这不是什么大问题。此外,除非缓存内存不足,否则它不需要驱逐数据,所以它可能会非常罕见。

答案 1 :(得分:1)

这取决于你的应用程序使用memcache进行其他事情的程度。不过,我会建议使用task queues将数据存储到每个请求的数据存储区,而不是减慢面向用户的请求。

答案 2 :(得分:0)

不要相信memcached会记住你的东西以供日后使用。如果你想要坚持不懈的东西,那就坚持下去吧。