【发布时间】:2013-02-24 08:24:40
【问题描述】:
据我所知,最好从 Datastore 迁移到 NDB。我最终会这样做,因为我希望我的网站将是性能密集型的。问题是什么时候。我的项目处于早期阶段。
从 NDB 本身开始会更好吗? NDB 是否也处理 Memcache。所以我不需要显式的 Memcache 层?
【问题讨论】:
标签: google-app-engine python-2.7 google-cloud-datastore gql
据我所知,最好从 Datastore 迁移到 NDB。我最终会这样做,因为我希望我的网站将是性能密集型的。问题是什么时候。我的项目处于早期阶段。
从 NDB 本身开始会更好吗? NDB 是否也处理 Memcache。所以我不需要显式的 Memcache 层?
【问题讨论】:
标签: google-app-engine python-2.7 google-cloud-datastore gql
NDB 提供了一种自动缓存机制。见Caching:
NDB 自动缓存它写入或读取的数据(除非 应用程序将其配置为不)。从缓存中读取比 从数据存储中读取。
可能自动缓存可以满足您的需求。剩下的这个 如果您想了解更多信息,页面提供了更详细的信息 或控制某些部分的缓存行为。
正如文档所说,默认行为可能会满足您的需求,但如果不是这样,您可以对其进行调整。如果您使用 NDB,则不需要为数据存储添加自己的 memcache 层。
至于何时迁移,越早越好。您等待的时间越长,您必须重写的代码就越多,以利用您从 NDB 获得的免费赠品。对于新项目,我建议从 NDB 开始。
【讨论】:
要添加到 Dan 的正确答案,请记住 ndb 和较旧的 db 只是 API,因此您可以无缝地开始切换到 ndb 而不必担心架构更改等。您是关于从数据存储切换到 NDB 的问题,但是您不要从数据存储切换,因为 NDB 仍然使用数据存储。有意义吗?
【讨论】: