首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用开发服务器上的祖先从AppEngine数据存储读取100行时的性能问题。

使用开发服务器上的祖先从AppEngine数据存储读取100行时的性能问题。
EN

Stack Overflow用户
提问于 2012-12-07 18:49:07
回答 1查看 93关注 0票数 1

我在我的Google AppEngine应用程序中有一个性能不佳的查询。这就是我要做的:

代码语言:javascript
运行
复制
import models
from time import time

parent = models.ParentEntity.gql("WHERE string_property = :1", "a guid").get()

start = time()

data_rows = []

children = models.ChildEntity.gql("WHERE ANCESTOR IS :1", parent.key())
for child in children.run():
    data_rows.append(child.data)

print "Loaded %s rows in: %s" % (len(data_rows), time() - start)

我在我的机器上的交互式控制台中运行了三次,以下是输出:

代码语言:javascript
运行
复制
Loaded 653 rows in: 8.18052411079
Loaded 653 rows in: 5.93607997894
Loaded 653 rows in: 9.97486710548

5-9秒加载653行是正常的吗?这是在dev web服务器上的,在真实的服务器上会更好吗?我知道memcache并且已经在使用它了,但是我如何才能在我确实需要填充缓存的时候让事情进行得更快呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-07 19:08:15

您不应该将dev服务器视为实时服务器上的任何性能指标。它使用平面文件或sqlite3数据库模拟BigTable基础设施,因此性能相当糟糕。正确测试这一点的唯一方法是在AppEngine本身上。

请注意,祖先查询的效率与它所获得的一样高,因此当您在生产中尝试它时,应该不会有任何问题。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13761578

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档