Example #1
0
 public LoadBalancerCommand(ILoadBalancer loadBalancer, IServerStatusCollector collector, IRetryHandler retryHandler, Server server)
 {
     RetryHandler = retryHandler;
     LoadBalancer = loadBalancer;
     Collector    = collector ?? new DefaultServerStatusCollector();
     _server      = server;
 }
 public DefaultServerWeightAccumulater(IServerStatusCollector collector, int serverWeightTaskTimerInterval = 30 * 1000)
 {
     _collector    = collector ?? throw new ArgumentNullException(nameof(collector));
     _weightsLock  = new ReaderWriterLockSlim(LockRecursionPolicy.NoRecursion);
     _timeoutTimer = new HashedWheelEvictionTimer(Utils.Timer);
     _timeoutTimer.Schedule(Accumulate, TimeSpan.FromMilliseconds(serverWeightTaskTimerInterval));
     Accumulate();
 }
 public AvailabilityFilter(IServerStatusCollector collector)
 {
     _collector = collector;
 }
 public AvailabilityFilteringRule(IServerStatusCollector collector) : base(new AvailabilityFilter(collector))
 {
 }
Example #5
0
 public BestAvailableRule(IServerStatusCollector collector)
 {
     _collector = collector;
 }