【发布时间】:2016-09-09 06:16:46
【问题描述】:
我正在读一本关于 GAE 的书。在关于交易的一章中,它说:
更新组中的实体可能会取消另一个进程对组中任何其他实体的更新。您应该设计您的数据模型,以便实体组不需要被许多用户同时更新。
如果同时更新的数量 单个组随着您的应用程序获得更多用户而增长。在这种情况下, 您通常希望将负载分散到多个实体组中,并且 作为用户群自动增加实体组的数量 成长。像这样的数据资源的可扩展划分称为 分片。
实体组的一个常用示例是留言板,其中留言板是属于该留言板的消息的祖先。
但是,如果更新消息(即对其进行编辑)会引起争用,并且随着用户群的增长而更频繁地导致争用,那么以董事会为祖先创建大量消息不是一个糟糕的设计吗?实体组的写入速率限制为每秒 1 次。这是否意味着看板中的任何消息每秒最多更新一次?
此外,仅将实体添加到组(即发布新消息)是否也算作“更新”并引起争用?
【问题讨论】:
标签: google-app-engine go