データストアの読み取りと書き込みを減らすために、人々は memcache の使用を提案します:
書く:
entity.put()
memcache.set(entity.key.id(), entity)
読んだ:
# id known:
entity = memcache.get(id)
if entity is None:
entity = Model.get_by_id(id)
memcache.set(id, entity)
上記を2つの関数として実装したいと思います:
def memPut(entity):
entity.put()
memcache.set(entity.key.id(), entity)
def memGet(Model, id):
entity = memcache.get(id)
if entity is None:
entity = Model.get_by_id(id)
memcache.set(id, entity)
memGet
は単なる仮説です。私の質問: 1) モデルの名前をパラメーターとして関数に渡すにはどうすればよいですか? 2) ID を指定せずにエンティティを作成すると、GAE は ID として整数を使用します。同じ ID を持つ 2 つのエンティティ (もちろん異なるモデルからのもの) がある場合はどうなりますか? memcache.get(id) は機能しますか?