1

我在看这个博客

https://medium.com/@yuka1984/azure-functions-%E3%81%AE-singletonattribute%E3%81%A8mode%E3%83%97%E3%83%AD%E3%83%91%E3% 83%86%E3%82%A3-bb728062198e

这个批量大小为 1 的单例将使队列能够在一个实例上一次执行一次队列函数,即使函数横向扩展也是如此。为什么我需要这个,我想防止azure函数调用的数据库不同时更新同一个表,导致数据不一致。

例如,实例 A 在数据库中执行检查数据并修改了一些值。同时,实例 B 执行检查数据库中的数据并修改值。预期结果是 A 先于实例 B 修改数据,但 B 执行速度比实例 A 快,因此实例 B 先更新。这不是我的预期结果。

执行顺序很好,但我不想混淆插入数据。

实例 A 有数据 [1,2,3,4] 实例 B 有数据 [2,4,6,7]

如果执行 A 或 B,结果将是 [1,2,3,4,6,7] 如果同时执行,则有可能有 [1,2,2,3,4,6,7]

在执行A时,执行B时表中可能还没有'2'。因此B也插入了'2'。在这种情况下,我有重复的数据。

博客是否保证满足要​​求?还有其他选择吗?

4

0 回答 0