MediaWiki  master
ILoadMonitor.php
Go to the documentation of this file.
1 <?php
24 namespace Wikimedia\Rdbms;
25 
26 use BagOStuff;
27 use Psr\Log\LoggerAwareInterface;
28 use WANObjectCache;
29 
35 interface ILoadMonitor extends LoggerAwareInterface {
44  public function __construct(
45  ILoadBalancer $lb, BagOStuff $sCache, WANObjectCache $wCache, array $options = []
46  );
47 
54  public function scaleLoads( array &$weightByServer, $domain );
55 
65  public function getLagTimes( array $serverIndexes, $domain );
66 }
Wikimedia\Rdbms\ILoadMonitor
An interface for database load monitoring.
Definition: ILoadMonitor.php:35
Wikimedia\Rdbms
Definition: ChronologyProtector.php:24
BagOStuff
Class representing a cache/ephemeral data store.
Definition: BagOStuff.php:71
Wikimedia\Rdbms\ILoadMonitor\getLagTimes
getLagTimes(array $serverIndexes, $domain)
Get an estimate of replication lag (in seconds) for each server.
Wikimedia\Rdbms\ILoadMonitor\scaleLoads
scaleLoads(array &$weightByServer, $domain)
Perform load ratio adjustment before deciding which server to use.
Wikimedia\Rdbms\ILoadMonitor\__construct
__construct(ILoadBalancer $lb, BagOStuff $sCache, WANObjectCache $wCache, array $options=[])
Construct a new LoadMonitor with a given LoadBalancer parent.
WANObjectCache
Multi-datacenter aware caching interface.
Definition: WANObjectCache.php:125
Wikimedia\Rdbms\ILoadBalancer
Database cluster connection, tracking, load balancing, and transaction manager interface.
Definition: ILoadBalancer.php:81