Loading...
PHP/MySQL | Как вы думаете (Оптимизация с кеш)
Чтобы не постоянно вызывать к базу сделал так, но ошутимо не меняет даже без кеша...


/**
* @return Component[]
*/
public function getComponents()
{
$components = LoadCache(60, 'components_', basename($this->component_class));

if (!$components) {
self::$_connection_load->execute([':type' => basename($this->component_class)]);
$components = self::$_connection_load->fetchAll(PDO::FETCH_ASSOC);
SaveCache($components, 'components_', basename($this->component_class));
}

if (!$this->components) {
foreach ($components AS $component) {
/**
* @var Component $class
*/
$class = new $this->component_class;
$class->setName($component['name']);
$class->setType($component['type']);
$class->setSystem($component['system']);
$class->setInstalled($component['installed']);
$class->setEnabled($component['enabled']);
$class->setConfig($component['config']);
$this->components[$component['name']] = $class;
}
}

return $this->components;
}

________
посл. ред. 23.08.2017 в 14:00; всего 2 раз(а); by [J]ungle
[J]ungle, актуально только для SSD дисков, на обычных дисках не даст прироста производительности.
memcache следует для этого использовать
файловый кеш никогда не будет быстрее RAM (разве что примонтировать ramfs)
Mobiaaa, А точно, о нем забыл хД.
Онлайн: 3
Время:
Gen. 0.0641
(c) Bym.Guru 2010-2025