TsgcWSCircuitBreaker方法 › LoadStateFromFile

LoadStateFromFile 方法

从之前由 SaveStateToFile 写入的文件中恢复断路器状态和计数器。

语法

procedure LoadStateFromFile(const aFileName: string);

参数

名称类型描述
aFileNameconst string由 SaveStateToFile 之前生成的文件路径。如果文件不存在,该方法将静默返回,因此首次启动场景是安全的。

备注

从快照中恢复每个密钥的状态、滚动窗口计数器和最后状态变更时间戳,该快照由 SaveStateToFile 写入。在流量开始流动之前于启动时调用一次,使断路器从上次已知状态恢复,而非冷启动,从而防止刚重启的进程立即冲击已知处于 Open 状态的上游。当文件缺失时,此方法为空操作(首次启动安全)。仅恢复运行时状态;配置必须以编程方式设置或来自设计时属性值。

示例

// Restore circuit state at startup so a restart does not forget Open circuits
procedure TForm1.FormCreate(Sender: TObject);
begin
  sgcWSCircuitBreaker1.LoadStateFromFile('circuit.dat');
  sgcAI_OpenAI1.CircuitBreaker := sgcWSCircuitBreaker1;
end;

返回方法