Когда лучше всего запускать Memcache в php mvc? - PullRequest
1 голос
/ 14 февраля 2012

В данный момент я разрабатываю свой первый очень простой пользовательский mvc, я использую Memcache для кеширования некоторых запросов pdo mysql, но мне интересно узнать, когда лучше всего делать это:

$memcached = new Memcache;
$memcached->connect('localhost', 11211) or die ("Could not connect");

В данный момент я пытаюсь сделать следующее:

class Model {

    protected static $memcached;

     function __construct() {

        self::$memcached = new Memcache;
        self::$memcached->connect('localhost', 11211) or die ("Could not connect");
    }
}


class advancedModel extends Model {

    function __construct($key) {

        $core = Connect::getInstance();
        $data = parent::$memcached->get($key);

        if(!$data){     
            $stmt = $core->dbh->prepare($sql);
            $stmt->bindParam(':uriName', $uriName, PDO::PARAM_STR);
            $stmt->execute();
            $data = $stmt->fetch();
            parent::$memcached->set($key, $data, 0, 3600);  
        }

        //Memcache fails
       return $data; 

   }
}

Было бы лучше как-нибудь запустить его все время, или вы можете просто вызывать его каждый раз, когда вам нужно что-то сохранить и открыть новое соединениекак mysql connect?

1 Ответ

2 голосов
/ 14 февраля 2012

Я бы использовал более новую библиотеку memcached для PHP (http://ca3.php.net/manual/en/memcached.addserver.php), которая подключается лениво. Таким образом, вы можете создать экземпляр объекта немедленно, но он не будет подключаться, пока вы не начнете его использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...