Sha256: 730a84293339e57d8bc44dc0dafb706eef9f3ceb17eb75a95a6a96df245c292d
Contents?: true
Size: 532 Bytes
Versions: 18
Compression:
Stored size: 532 Bytes
Contents
module Dryad module Cluster class RoundRobin def initialize @index = Concurrent::AtomicFixnum.new @services = Concurrent::AtomicReference.new end def set_services(instances) @services.set(instances) end def service instances = @services.get() if instances.nil? || instances.empty? raise Dryad::Cluster::NoServicesError, "Round robin nodes are empty." end instances[@index.increment % instances.size] end end end end
Version data entries
18 entries across 18 versions & 2 rubygems