我们正在尝试测试提到的写入限制异常大约为 1 写入/秒,以准备我们的代码(https://developers.google.com/appengine/docs/python/datastore/exceptions -> Timeout)
所以我正在创建一个项目并使用循环计数通过任务更新它 10k 次,通过循环更新它 10k 次......它似乎不会触发异常,尽管每秒写入量应该足够高(我记得类似每秒超过一次写入变得至关重要)。
总是一样的:当你想要它们时,事情不会破裂;)。
class Message(ndb.Model):
text = ndb.StringProperty()
count = ndb.IntegerProperty()
#defined in seperate file
class DeferredClass(object):
def put(self, id, x):
msg = Message.get_by_id(id)
msg.count = x
try:
msg.put()
except:
logging.error("error putting the Message")
logging.error(sys.exc_info()[0])
msg = Message(text="TestGreeting", count=0)
key = msg.put()
id = key.id()
test = DeferredClass()
for x in range(10000):
deferred.defer(test.put, id, x)
for x in range(10000):
msg.count = x
try:
msg.put()
except:
logging.error("error putting the Message")
logging.error(sys.exc_info()[0])
self.response.out.write("done")
PS:我们知道文档是针对 db 的,代码是 ndb ......基本的限制应该仍然存在......另外:关于 ndb 异常的文档会很棒!任何人?