Hallo zusammen
Ich habe mal eine Frage. Was haltet ihr davon, wenn man während eines Requests die PreparedStatement-Objects cached in einer Singleton-Class?
Also etwas in der Art:
Macht das eurer Meinung nach Sinn? Habe gelesen der Performance-Gewinn sei eher minimal... aber es machen es trotzdem ein paar Leute...
Ich habe mal eine Frage. Was haltet ihr davon, wenn man während eines Requests die PreparedStatement-Objects cached in einer Singleton-Class?
Also etwas in der Art:
PHP-Code:
<?php
class PDOPrepStmntCache {
private static $instance = null;
private $cache;
private __construct() {
$this->cache = array();
}
public static function getInstance() {
if(self::$instance === null)
self::$instance = new PDOPrepStmntCache();
return self::$instance;
}
private function cacheStmnt($sql,PDOStatement $prepStmnt) {
$this->cache[$sql] = $prepStmnt;
// ODER: $this->cache[sha1($sql)] = $prepStmnt; ?
}
public function getQuery($sql) {
if(!array_key_exists($this->cache,$sql)) {
return null;
return $this->cache[$sql];$
// ODER EBEN: $this->cache[sha1($sql)];
}
}
?>
Kommentar