0

我遇到了一个问题,我长期运行计划好的 JitterBit 操作。我将它们安排在一起,因为我需要保持数据流动。但是,当它们花费的时间比预期的要长时,我最终会同时运行多个操作集实例。这正在扼杀我的表现。

我将把修复放在下面的答案中。

4

1 回答 1

0

为了解决这个问题,我在操作集的开头添加了一个额外的脚本操作(计划在此操作上运行)。这个脚本只是检查这个集合中的一个操作是否已经在运行。如果没有,它开始下一个操作。如果有任何东西在运行,它就会存在并等待下一个计划的实例。

这是我的脚本示例。这个假设在这个操作集中最初有两个操作。

<trans>
$isInQueue=GetOperationQueue("<TAG>Operations/OperationToCheck01</TAG>");
$isInQueue2=GetOperationQueue("<TAG>Operations/OperationToCheck02</TAG>");
$isRunning=$isInQueue[0][1];
$isRunning2=$isInQueue2[0][1];
if(($isRunning==1 && $isRunning!=Null()) || ($isRunning2==1 && $isRunning2!=Null()),
  WriteToOperationLog("Skip for now: "+$isRunning+" / "+$isRunning2);,
  WriteToOperationLog("Nothign is Running - Starting Operation Chain.");
  RunOperation("<TAG>Operations/OperationToCheck01</TAG>");
);
</trans>
于 2016-09-08T17:13:57.280 回答