MediaWiki  1.29.1
Wikimedia\Rdbms\LoadMonitorMySQL Class Reference

Basic MySQL load monitor with no external dependencies Uses memcached to cache the replication lag for a short time. More...

Inheritance diagram for Wikimedia\Rdbms\LoadMonitorMySQL:
Collaboration diagram for Wikimedia\Rdbms\LoadMonitorMySQL:

Public Member Functions

 __construct (ILoadBalancer $lb, BagOStuff $srvCache, BagOStuff $cache, array $options=[])
 Construct a new LoadMonitor with a given LoadBalancer parent. More...
 
- Public Member Functions inherited from Wikimedia\Rdbms\LoadMonitor
 getLagTimes (array $serverIndexes, $domain)
 Get an estimate of replication lag (in seconds) for each server. More...
 
 scaleLoads (array &$weightByServer, $domain)
 Perform load ratio adjustment before deciding which server to use. More...
 
 setLogger (LoggerInterface $logger)
 

Protected Member Functions

 getWeightScale ( $index, IDatabase $conn=null)
 
- Protected Member Functions inherited from Wikimedia\Rdbms\LoadMonitor
 getServerStates (array $serverIndexes, $domain)
 

Private Attributes

float $warmCacheRatio
 What buffer pool use ratio counts as "warm" (e.g. More...
 

Additional Inherited Members

- Public Attributes inherited from Wikimedia\Rdbms\LoadMonitor
const VERSION = 1
 
- Protected Attributes inherited from Wikimedia\Rdbms\LoadMonitor
BagOStuff $mainCache
 
ILoadBalancer $parent
 
LoggerInterface $replLogger
 
BagOStuff $srvCache
 

Detailed Description

Basic MySQL load monitor with no external dependencies Uses memcached to cache the replication lag for a short time.

Definition at line 32 of file LoadMonitorMySQL.php.

Constructor & Destructor Documentation

◆ __construct()

Wikimedia\Rdbms\LoadMonitorMySQL::__construct ( ILoadBalancer  $lb,
BagOStuff  $sCache,
BagOStuff  $cCache,
array  $options = [] 
)

Construct a new LoadMonitor with a given LoadBalancer parent.

Parameters
ILoadBalancer$lbLoadBalancer this instance serves
BagOStuff$sCacheLocal server memory cache
BagOStuff$cCacheLocal cluster memory cache
array$optionsOptions map

Reimplemented from Wikimedia\Rdbms\LoadMonitor.

Definition at line 36 of file LoadMonitorMySQL.php.

References $cache, $options, and Wikimedia\Rdbms\LoadMonitor\$srvCache.

Member Function Documentation

◆ getWeightScale()

Wikimedia\Rdbms\LoadMonitorMySQL::getWeightScale (   $index,
IDatabase  $conn = null 
)
protected
Parameters
integer$indexServer index
IDatabase | null$connConnection handle or null on connection failure
Returns
float

Reimplemented from Wikimedia\Rdbms\LoadMonitor.

Definition at line 46 of file LoadMonitorMySQL.php.

References $res, and $s.

Member Data Documentation

◆ $warmCacheRatio

float Wikimedia\Rdbms\LoadMonitorMySQL::$warmCacheRatio
private

What buffer pool use ratio counts as "warm" (e.g.

0.5 for 50% usage)

Definition at line 34 of file LoadMonitorMySQL.php.


The documentation for this class was generated from the following file: