Tag: 器断路器

我如何使用断路器?

我正在寻找在我的控制之外远程调用服务的方法,直到连接成功为止。 我也不想简单地设置一个定时器,每隔n秒/分钟执行一次动作,直到成功为止。 经过一系列研究后,似乎断路器模式非常适合。 我找到了一个使用Castle Windsor拦截器的实现,看起来很棒。 唯一的问题是我不知道如何使用它。 从我发现的关于该主题的几篇文章中,我能够找到的唯一用法示例是简单地使用断路器仅调用一次动作,这似乎不太有用。 从那看起来我需要在一段while(true)循环中使用断路器简单地运行我的动作。 我如何使用Windsor拦截器执行一个动作来调用外部服务,直到它成功而不会关闭我们的服务器? 有人可以填写缺失的部分吗? 这是我能想到的 while(true) { try { service.Subscribe(); break; } catch (Exception e) { Console.WriteLine(“Gotcha!”); Thread.Sleep(TimeSpan.FromSeconds(10)); } } Console.WriteLine(“Success!”); public interface IService { void Subscribe(); } public class Service : IService { private readonly Random _random = new Random(); public void Subscribe() { var a = _random.Next(0, […]