为什么 IndexedDB 被设计为带有锁定表的异步 API?
我的理解是异步部分已完成,因此多个选项卡不能相互阻止,这会导致浏览体验不佳......但是为什么选择异步来解决这个问题......然后,雪上加霜,它决定将事务锁定在表上而不是实体上。
Google Bigtable 有完全相同的问题,应用引擎上的多个实例可能会在读取和写入时相互阻塞,因此该团队决定在实体级别进行锁定(技术上是实体组,但与本次讨论没有区别)。他们对数万亿个实体和同步 api 没有任何问题。
所以我的问题是,为什么 indexeddb 没有设计为同步的,并阻止具有用户指定超时的实体?我在这里想念什么?