gpt4 book ai didi

google-app-engine - Memcached:缓存对象总是好的? (GAE 客观化)

转载 作者:行者123 更新时间:2023-12-04 05:19:36 25 4
gpt4 key购买 nike

上下文:使用 Memcached。 (使用 Google App Engine 和 Objectify,但这无关紧要)

我将创建一个简单的示例,一个具有两个实体 Player 和 Game 的游戏。用户通常可以查阅单个已打开的请求游戏甚至玩家资料。可能有 100 场比赛,也可能是 3000000 场比赛。

(1) 对所有实体使用缓存是个好主意吗?如果我有未使用的 RAM,为什么不将其用于游戏或播放器?
这有什么不好的情况吗? (除了几乎没有时间缓存访问数据)

(2) 另一个问题是,在加载对象时,我应该分区以优化存储的对象吗?并缓存?,例如:

player {
email
pass

punctuation // This data will change quite frequently
numGamesClosed // This data will change quite frequently
}

也许更好:
 @Entity     //DataStore entity
player {
email
pass
}

@Cache //The entity will be cached into Memchached
@Entity //DataStore entity
DatosJugador
{
@Parent Key <Player> owner;
punctuation
numGamesClosed
}

非常感谢

最佳答案

memcache 使用的“ram”不是来自您的应用程序,而是来自共享的 GAE 通用的 memcached 内存池。应用程序的所有实例“看到”相同的内存缓存。

您放入 memcache 的内容 不算对您的应用程序 ram 使用情况。

然而,memcache 的内容可以在没有通知的情况下随时被驱逐。所以真的没有理由(除了你可以放入 memcache 的对象大小的上限)不缓存所有东西,只要你可以回退到数据存储,如果它在你要求的时候不在缓存中.

关于google-app-engine - Memcached:缓存对象总是好的? (GAE 客观化),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13800852/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com