Firestore事务中多次文档写入的服务器时间戳是否一致?
Firestore事务中多文档写入的服务器时间戳一致性
- 在Firestore事务中写入多个文档时,使用
FieldValue.serverTimestamp()生成的时间戳会完全一致。 - 原因是Firestore的事务是原子性执行的:整个事务内的所有写入操作会被打包成一个请求提交到服务器,服务器在处理这个请求时,会为所有事务内的
serverTimestamp()字段分配同一个当前服务器时间值。 - 同理,在Firestore批处理(Batch Write)中写入多个文档时,
serverTimestamp()的时间戳也会保持一致,因为批处理同样是原子提交的整体操作。 - 只有当你将两个文档的写入拆分为独立的、非事务/非批处理的请求时,
serverTimestamp()才可能因为两次请求的服务器处理时间不同而产生差异。
内容的提问来源于stack exchange,提问作者Nathan
相关产品推荐
相关产品推荐

