事务中的单个db.put_async()和多个db.put_async()之间是否存在内存差异?


class A(db.Model):
  d = db.DateTimeProperty(auto_now=True)
class B(db.Model):
  c = db.TextProperty()
def store(): #1
  db.put_async(A(key_name=x,parent=key) for x in x_list) #x_list: 5000
  db.put_async(B(c=y,parent=key) for y in y_list) #y_list: 2500*1KB
def store(): #2
  db.put_async([A(key_name=x,parent=key) for x in x_list]+
               [B(c=y,parent=key) for y in y_list])
db.run_in_transaction(store)

哪个store()使用更少的内存?

生成器或单独的rpc会产生影响吗?如果我没记错的话,run_in_transaction()基本上是收集看跌期权,然后立即发送它们

由于您正在进行异步调用,并且不产生结果,因此它们都不会做任何事情。如果使用同步调用,选项1理论上会使用更少的内存,但如果它很重要,您应该测试它。

最新更新