我有一个带有“收到 HTTP 请求时”触发器的逻辑应用程序。我收到了来自另一个应用程序的两个并发帖子,尽管这些帖子是直接相关的,但它们只是包含略有不同的数据点。这仅仅是由于该应用程序中的一个限制,即它不能将两个帖子合并为一个。不幸的是,我对此没有任何控制权。
为了防止剩余逻辑中出现一些竞争条件问题,我们将并发控制设置为 On,并行度为 1,显然一次只允许运行一次。
我收到一个帖子,处理一些逻辑,确定是否两个都收到了。如果我确定这只是第一篇文章,我会以取消的状态终止运行。
我遇到的问题是,当逻辑应用将第二个帖子排入队列时,它并不总是自动触发“等待”的运行。在极少数情况下,它会在第一次运行后立即触发。我还看到它在第一次运行后大约 2 分钟内触发。在我手动触发逻辑应用程序以使其运行之前,我还看到它处于“等待”状态超过 20 分钟。
这是我经常看到的:
处理第一次运行,确定它只是两个帖子中的第一个,因此有取消该运行的逻辑。但是,同时进来的第二个帖子仍处于“等待”状态。
任何想法可能会发生什么或我可以如何防止这种情况?