Memcache это название php-расширения для работы с сервисом
кеширования memcached. Но существует еще одно (а может и не
одно) php-расширение для работы сервисом кеширования memcached с
названием memcached
Итого имеется:
Отличия между этими разширениями небольшие, вот некоторые из них:
apt-get install memcached
Перезапускаем
/etc/init.d/memcached restart
Проверяем:
# netstat -tap | grep memcached
tcp 0 0 localhost:11211 *:* LISTEN 13036/memcached
Компилируем и устанавливаем модуль для PHP:
apt-get install php5-dev libmemcache-dev
pecl download memcache
tar xzvf memcache-2.2.7.tgz
cd memcache-2.2.7/
phpize && ./configure --enable-memcache && make
cp modules/memcache.so /usr/lib/php5/20100525+lfs/
echo 'extension=memcache.so' >> /etc/php5/apache2/php.ini
/etc/init.d/apache2 restart
Пример:
//Создаём новый объект. Также можно писать и в процедурном стиле
$memcache_obj = new Memcache;
//Соединяемся с нашим сервером
$memcache_obj->connect('127.0.0.1', 11211) or die(«Could not connect»);
//Попытаемся получить объект с ключом our_var
$var_key = @$memcache_obj->get('our_var');
if(!empty($var_key))
{
//Если объект закэширован, выводим его значение
echo $var_key;
}
else
{
//Если в кэше нет объекта с ключом our_var, создадим его
//Объект our_var будет храниться 5 секунд и не будет сжат
$memcache_obj->set('our_var', date('G:i:s'), false, 5);
//Выведем закэшированные данные
echo $memcache_obj->get('our_var');
}
//Закрываем соединение с сервером Memcached
$memcache_obj->close();
?>
Итого имеется:
- один сервис кеширования memcached
- два php-расширения для работы с указанным выше сервисом кеширования:
Отличия между этими разширениями небольшие, вот некоторые из них:
- memcache немного быстрее memcached (бытует мнение, что разница в пределах 10%);
- memcache имеет много меньше возможностей по работе с сервисом кеширования чем memcached (если пройти по ссылкам выше можно в этом убедиться);
- memcache старше memcached (начало разработки в 2004 против 2009);
- memcached требует для работы 5.2+;
- memcache запускается на 5.1, а в требованиях у него стоит более ранний 4.3.3+.
apt-get install memcached
Перезапускаем
/etc/init.d/memcached restart
Проверяем:
# netstat -tap | grep memcached
tcp 0 0 localhost:11211 *:* LISTEN 13036/memcached
Компилируем и устанавливаем модуль для PHP:
apt-get install php5-dev libmemcache-dev
pecl download memcache
tar xzvf memcache-2.2.7.tgz
cd memcache-2.2.7/
phpize && ./configure --enable-memcache && make
cp modules/memcache.so /usr/lib/php5/20100525+lfs/
echo 'extension=memcache.so' >> /etc/php5/apache2/php.ini
/etc/init.d/apache2 restart
Пример:
//Создаём новый объект. Также можно писать и в процедурном стиле
$memcache_obj = new Memcache;
//Соединяемся с нашим сервером
$memcache_obj->connect('127.0.0.1', 11211) or die(«Could not connect»);
//Попытаемся получить объект с ключом our_var
$var_key = @$memcache_obj->get('our_var');
if(!empty($var_key))
{
//Если объект закэширован, выводим его значение
echo $var_key;
}
else
{
//Если в кэше нет объекта с ключом our_var, создадим его
//Объект our_var будет храниться 5 секунд и не будет сжат
$memcache_obj->set('our_var', date('G:i:s'), false, 5);
//Выведем закэшированные данные
echo $memcache_obj->get('our_var');
}
//Закрываем соединение с сервером Memcached
$memcache_obj->close();
?>
No comments:
Post a Comment