我需要在内存中保留一些值,类似于内存数据库。在可靠性方面,我不怕系统故障,我可以忍受。但是,我不能使用 memcache 服务,因为这些值可以随时被驱逐。当应用程序扩展时,我需要这些值在其他机器上可用。我想 appengine 不会使内存扩展或会扩展(例如,如果我将值保存在普通的 Java 集合中)?
我在这里想要实现的是“选择昵称”服务。这分两步进行。首先,用户保留昵称。然后他注册了昵称。昵称存储在一个实体组下(原文如此!)。因此,我需要避免数据存储争用。
据我从https://developers.google.com/appengine/articles/scaling/memcache了解到,我可以在一定程度上依赖于 memcache 中的值不应因任意原因而被驱逐。但是,我必须指望这会不时发生(例如在高内存水平上)。这种价值损失对我的用户来说是非常不愉快的。