Manual Reference Pages - DBIX::CLASS::STORAGE::DBI::REPLICATED::BALANCER::RANDOM (3)
DBIx::Class::Storage::DBI::Replicated::Balancer::Random - A random Balancer
This class is used internally by DBIx::Class::Storage::DBI::Replicated. You
shouldnt need to create instances of this class.
Given a pool (DBIx::Class::Storage::DBI::Replicated::Pool) of replicated
databases (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.
This class defines the following attributes.
A number greater than 0 that specifies what weight to give the master when
choosing which backend to execute a read query on. A value of 0, which is the
default, does no reads from master, while a value of 1 gives it the same
priority as any single replicant.
For example: if you have 2 replicants, and a master_read_weight of 0.5,
the chance of reading from master will be 20%.
You can set it to a value higher than 1, making master have higher weight than
any single replicant, if for example you have a very powerful master.
This class defines the following methods.
Returns an active replicant at random. Please note that due to the nature of
the word random this means its possible for a particular active replicant to
be requested several times in a row.
Check the list of additional DBIC resources.
COPYRIGHT AND LICENSE
This module is free software copyright
by the DBIx::Class (DBIC) authors. You can
redistribute it and/or modify it under the same terms as the
|perl v5.20.3 ||DBIX::CLASS::STORAGE::DBI::REPLICATED::BALANCER::RANDOM (3) ||2016-02-09 |
Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.