Expando比Model的反序列化更花时间
2010 11 1 10:32 AM 1728次查看
分类:Google App Engine 标签:Google App Engine, Python
from time import time
class Comment(db.Expando):
email = db.StringProperty(required=True)
content = db.TextProperty()
format = db.IntegerProperty(default=0, indexed=False)
approved = db.BooleanProperty(default=True)
time = db.DateTimeProperty(auto_now_add=True)
mod_time = db.DateTimeProperty(auto_now_add=True, indexed=False)
t=time()
Comment.all().fetch(1000)
print time()-t
从后台的执行情况来看,cpu时间是11078~11799ms。改成db.Model后,cpu时间是10319~10959ms,差不多少了0.8秒。而使用datastore.Query自然更快:
from google.appengine.api import datastore
from time import time
t=time()
datastore.Query('Comment').Get(1000)
print time()-t
cpu时间为10139~10398ms,快了大概半秒,看来大批操作数据库时,用原生的Entity性能更好。
0条评论 你不来一发么↓