Jam*_*Gan 3 google-app-engine app-engine-ndb google-cloud-datastore
亲爱的大家
目前我正在使用ndb API来存储一些统计信息.不幸的是,这成了我费用的主要来源.我认为如果我只将它们保存到memcache,它应该便宜得多.数据是否因缓存过期而丢失并不重要.
阅读本手册后,我假设_use_datastore类变量可用于配置此行为:
class StaticModel(ndb.Model):
_use_datastore = False
userid = ndb.StringProperty()
created_at = ndb.DateTimeProperty(auto_now_add=True)
Run Code Online (Sandbox Code Playgroud)
我是否知道上述陈述是否是正确的解决方案?
干杯!
小智 5
我认为有三种方法可以达到你想要的效果.
第一种是根据您的问题在NDB模型类上设置_use_datastore = False.
第二种方法是每当你输入/获取/删除一个StaticModel时传递use_datastore = False.一个例子是:
model = StaticModel(userid="foo")
key = model.put(use_datastore=False)
n = key.get(use_datastore=False)
Run Code Online (Sandbox Code Playgroud)
第三种选择是在NDB上下文中设置数据存储策略,该策略对任何StaticModel键都返回false.就像是:
context.set_datastore_policy(lambda key: True if key.kind() == 'StaticModel' else False)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |