コンテキスト: Memcached の使用。(Google App Engine と Objectify を使用しますが、これは関係ありません)
簡単な例として、Player と Game の 2 つのエンティティを持つゲームを作成します。多くの場合、ユーザーは開いている 1 つのリクエスト ゲームやプレイヤー プロファイルを調べることができます。100 ゲームまたは 3000000 ゲームが開いている可能性があります。
(1)すべてのエンティティにキャッシングを使用するのは良い考えですか? 未使用の RAM がある場合、ゲームやプレーヤーで使用しないのはなぜですか? これには悪いケースがありますか?(データにアクセスするキャッシュを除いて、ほとんど時間がありません)
(2)もう 1 つの質問は、オブジェクトをロードするときに、格納されているオブジェクトを最適化するためにパーティション化する必要があるかどうかです。たとえば、次のようにします。
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
}
どうもありがとう