我们的Google AppEngine Java应用程序涉及缓存从服务器请求信息的最近用户。在memcache中缓存对象列表的最佳方法
当前工作的解决方案是我们存储在一个列表中,然后将其缓存的用户信息。
当我们需要最近的用户时,我们只需从这个列表中抓取一个。
最近的用户列表不是我们的应用程序的工作是至关重要的,如果它丢弃缓存它只是重建为用户不断从服务器请求。
我想知道的是:我能更好地做到这一点吗?
使用目前的方法,我们可以在列表变大(用于memcache)之前存储一定数量的用户(我们目前将列表限制为1000,并在插入新时删除最老的列表)。此外,该列表将需要非常快速地更新,其中涉及从memcache中检索完整列表以添加单个用户。
具有存储在缓存中的每个用户,我们要求当前用户在30分钟后到期分别是对我们有利的。目前,这是一项手动任务,我们要确保列表中不包括过期用户。
这种情况下最好的方法是什么?如果它将用户单独存储在缓存中,跟踪用户的最佳方法是什么,以便我们可以检索它?
用户信息非常基本,目前甚至没有实体。该列表是一个简单的hashmaps列表,其中一个hashmap代表一个用户。散列表包含用户的性别,语言,插入时间戳和用户iOS推送通知标识符是否存在。 – Simon
HashMap听起来像是错误的数据类型。 HashMap只对大量的键值对有效。我只是将一个“用户”实体存储在memcache中。 –