Class: ActiveRecord::Sharding::ModuloRouter

Inherits:
Object
  • Object
show all
Defined in:
lib/active_record/sharding/modulo_router.rb

Instance Method Summary collapse

Constructor Details

#initialize(cluster_config) ⇒ ModuloRouter

Returns a new instance of ModuloRouter.



4
5
6
# File 'lib/active_record/sharding/modulo_router.rb', line 4

def initialize(cluster_config)
  @cluster_config = cluster_config
end

Instance Method Details

#route(id) ⇒ Object



8
9
10
11
# File 'lib/active_record/sharding/modulo_router.rb', line 8

def route(id)
  modulo_key = id % @cluster_config.registerd_connection_count
  @cluster_config.fetch modulo_key
end