public function ChainedFastBackendFactory::__construct in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Cache/ChainedFastBackendFactory.php \Drupal\Core\Cache\ChainedFastBackendFactory::__construct()
Constructs ChainedFastBackendFactory object.
Parameters
\Drupal\Core\Site\Settings|NULL $settings: (optional) The settings object.
string|NULL $consistent_service_name: (optional) The service name of the consistent backend factory. Defaults to:
- $settings->get('cache')['default'] (if specified)
- 'cache.backend.database' (if the above isn't specified)
string|NULL $fast_service_name: (optional) The service name of the fast backend factory. Defaults to:
- 'cache.backend.apcu' (if the PHP process has APCu enabled)
- NULL (if the PHP process doesn't have APCu enabled)
File
- core/
lib/ Drupal/ Core/ Cache/ ChainedFastBackendFactory.php, line 48 - Contains \Drupal\Core\Cache\ChainedFastBackendFactory.
Class
- ChainedFastBackendFactory
- Defines the chained fast cache backend factory.
Namespace
Drupal\Core\CacheCode
public function __construct(Settings $settings = NULL, $consistent_service_name = NULL, $fast_service_name = NULL) {
// Default the consistent backend to the site's default backend.
if (!isset($consistent_service_name)) {
$cache_settings = isset($settings) ? $settings
->get('cache') : array();
$consistent_service_name = isset($cache_settings['default']) ? $cache_settings['default'] : 'cache.backend.database';
}
// Default the fast backend to APCu if it's available.
if (!isset($fast_service_name) && function_exists('apc_fetch')) {
$fast_service_name = 'cache.backend.apcu';
}
$this->consistentServiceName = $consistent_service_name;
// Do not use the fast chained backend during installation. In those cases,
// we expect many cache invalidations and writes, the fast chained cache
// backend performs badly in such a scenario.
if (!drupal_installation_attempted()) {
$this->fastServiceName = $fast_service_name;
}
}