memcache を使用してパフォーマンスを改善しようとしています。
これが私のモデルです:
class ABC(db.Model):
some_property = db.StringProperty()
# more properties
class XYZ(db.Model):
another_property = db.StringProperty()
abc = db.ReferenceProperty(ABC,collection_name="xyzs")
# more properties
私はABCの2つのエンティティとXYZの800エンティティしか持っていません
。このアプリの機能の1つは、すべてのXYZのExcelシートを提供することです。Excel シートには 2 つの列があります。
最初の列は「another_property」で、2 番目の列は「some_property」です (ABC リファレンスから)。
xyzs = XYZ.all()
for xyz in xyzs:
logging.info(xyz.another_property)
logging.info(xyz.abc.some_property)
このアプローチでxyz.abc.some_property
は、毎回データストア呼び出しを行っていました
これを見て、memcache を使用して abc 参照をメモリに保存することにしました。
memcache を使用しても、応答時間に大きな変化は見られませんでした。
abcId = XYZ.abc.get_value_for_datastore(xyz).id()
#Get ABC reference from memcache if present else bring it from datastore and add it to memcahce.
パフォーマンスの向上が見られないのはなぜですか?