class ActiveRecord::Sharding::ModuloRouter

Public Class Methods

new(cluster_config) click to toggle source
# File lib/active_record/sharding/modulo_router.rb, line 4
def initialize(cluster_config)
  @cluster_config = cluster_config
end

Public Instance Methods

route(id) click to toggle source
# File lib/active_record/sharding/modulo_router.rb, line 8
def route(id)
  modulo_key = id % @cluster_config.registered_connection_count
  @cluster_config.fetch modulo_key
end