NAME
DBIx::Class::Storage::DBI::Replicated::Balancer::Random - A 'random' Balancer
SYNOPSIS
This class is used internally by DBIx::Class::Storage::DBI::Replicated. You shouldn't need to create instances of this class.
DESCRIPTION
Given a pool (DBIx::Class::Storage::DBI::Replicated::Pool) of replicated database's (DBIx::Class::Storage::DBI::Replicated::Replicant), defines a method by which query load can be spread out across each replicant in the pool.
This Balancer uses List::Util keyword 'shuffle' to randomly pick an active replicant from the associated pool. This may or may not be random enough for you, patches welcome.
ATTRIBUTES
This class defines the following attributes.
METHODS
This class defines the following methods.
next_storage
Returns an active replicant at random. Please note that due to the nature of the word 'random' this means it's possible for a particular active replicant to be requested several times in a row.
AUTHOR
John Napiorkowski <john.napiorkowski@takkle.com>
LICENSE
You may distribute this code under the same terms as Perl itself.