For those confuse about the memcached extension and the memcache extension, the short story is that both of them are clients of memcached server, and the memcached extension offer more features than the memcache extension.
PHP.mk документација
Memcache
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Патека
book.memcached.php
Локална патека за оваа страница.
Извор
php.net/manual/en
Оригиналниот HTML се реупотребува и локално се стилизира.
Режим
Прокси + превод во позадина
Кодовите, табелите и белешките остануваат читливи во истиот тек.
Референца
book.memcached.php
Memcache
Референца за `book.memcached.php` со подобрена типографија и навигација.
Memcache
Вовед
» memcached е систем за кеширање објекти во меморија со високи перформанси, дистрибуиран, генерички по природа, но наменет за забрзување на динамични веб апликации со олеснување на оптоварувањето на базата на податоци.
Овој екстензија користи libmemcached библиотека за да обезбеди API за комуникација со memcached сервери. Исто така обезбедува session менаџер (memcached).
Информации за libmemcached може да се најдат на » http://libmemcached.org/libMemcached.html.
- Installing/Configuring
- Претходно дефинирани константи
- Memcache Функции
- Повици
- Поддршка за сесии
- Memcache — Класата Memcached
- Memcached::add — Додај ставка под нов клуч
- Memcached::addByKey — Додај ставка под нов клуч на специфичен сервер
- Memcached::addServer — Додај сервер во групата на сервери
- Memcached::addServers — Додај повеќе сервери во групата на сервери
- Memcached::append — Додај податоци на постоечка ставка
- Memcached::appendByKey — Додај податоци на постоечка ставка на специфичен сервер
- Memcached::cas — Спореди и замени ставка
- Memcached::casByKey — Спореди и замени ставка на специфичен сервер
- Memcached::__construct — Креирај Memcached инстанца
- Memcached::decrement — Намали ја вредноста на нумеричка ставка
- Memcached::decrementByKey — Намали ја вредноста на нумеричка ставка, зачувана на специфичен сервер
- Memcached::delete — Избриши ставка
- Memcached::deleteByKey — Избриши ставка од специфичен сервер
- Memcached::deleteMulti — Избриши повеќе ставки
- Memcached::deleteMultiByKey — Избриши повеќе ставки од специфичен сервер
- Memcached::fetch — Преземи го следниот резултат
- Memcached::fetchAll — Преземи ги сите преостанати резултати
- Memcached::flush — Онеспособи ги сите ставки во кешот
- Memcached::get — Преземи ставка
- Memcached::getAllKeys — Земи ги клучевите зачувани на сите сервери
- Memcached::getByKey — Преземи ставка од специфичен сервер
- Memcached::getDelayed — Барај повеќе ставки
- Memcached::getDelayedByKey — Барај повеќе ставки од специфичен сервер
- Memcached::getMulti — Преземи повеќе ставки
- Memcached::getMultiByKey — Преземи повеќе ставки од специфичен сервер
- Memcached::getOption — Преземи вредност на опција на Memcached
- Memcached::getResultCode — Врати го кодот на резултатот од последната операција
- Memcached::getResultMessage — Врати ја пораката што го опишува резултатот од последната операција
- Memcached::getServerByKey — Мапирај клуч на сервер
- Memcached::getServerList — Земи ја листата на сервери во групата
- Memcached::getStats — Земи статистика на групата сервери
- Memcached::getVersion — Земи информации за верзијата на групата сервери
- Memcached::increment — Зголеми ја вредноста на нумеричката ставка
- Memcached::incrementByKey — Зголемете ја вредноста на нумеричката ставка, зачувана на одреден сервер
- Memcached::isPersistent — Проверете дали се користи постојана врска со memcache
- Memcached::isPristine — Проверете дали инстанцата е неодамна креирана
- Memcached::prepend — Додадете податоци на почетокот на постоечка ставка
- Memcached::prependByKey — Додадете податоци на почетокот на постоечка ставка на одреден сервер
- Memcached::quit — Затворете ги сите отворени врски
- Memcached::replace — Заменете ја ставката под постоечки клуч
- Memcached::replaceByKey — Заменете ја ставката под постоечки клуч на одреден сервер
- Memcached::resetServerList — Исчистете ги сите сервери од списокот на сервери
- Memcached::set — Зачувајте ставка
- Memcached::setByKey — Зачувајте ставка на одреден сервер
- Memcached::setEncodingKey — Поставете AES клуч за шифрирање за податоци во Memcached
- Memcached::setMulti — Зачувајте повеќе ставки
- Memcached::setMultiByKey — Зачувајте повеќе ставки на одреден сервер
- Memcached::setOption — Поставете опција за Memcached
- Memcached::setOptions — Поставете опции за Memcached
- Memcached::setSaslAuthData — Поставете ги ингеренциите што ќе се користат за автентикација
- Memcached::touch — Поставете нов рок на истекување на ставка
- Memcached::touchByKey — Поставете нов рок на истекување на ставка на одреден сервер
- MemcachedException — Класата MemcachedException
Белешки од корисници 4 белешки
joelhy ¶
пред 14 години
габриел.мајбрун@демандмедиа.ком ¶
пред 11 години
GOTCHA: Recently I was tasked with moving from PECL memcache to PECL memcached and ran into a major problem -- memcache and memcached serialize data differently, meaning that data written with one library can't necessarily be read with the other library.
For example, If you write an object or an array with memcache, it's interpreted as an integer by memcached. If you write it with memcached, it's interpreted as a string by memcache.
tl;dr - You can't safely switch between memcache and memcached without a either a cache flush or isolated cache environments.
<?php
$memcache = new Memcache;
$memcacheD = new Memcached;
$memcache->addServer($host);
$memcacheD->addServers($servers);
$checks = array(
123,
4542.32,
'a string',
true,
array(123, 'string'),
(object)array('key1' => 'value1'),
);
foreach ($checks as $i => $value) {
print "Checking WRITE with Memcache\n";
$key = 'cachetest' . $i;
$memcache->set($key, $value);
usleep(100);
$val = $memcache->get($key);
$valD = $memcacheD->get($key);
if ($val !== $valD) {
print "Not compatible!";
var_dump(compact('val', 'valD'));
}
print "Checking WRITE with MemcacheD\n";
$key = 'cachetest' . $i;
$memcacheD->set($key, $value);
usleep(100);
$val = $memcache->get($key);
$valD = $memcacheD->get($key);
if ($val !== $valD) {
print "Not compatible!";
var_dump(compact('val', 'valD'));
}
}
Мораднеџад ¶
пред 5 години
## Installing Memcached on Ubuntu
To install Memcached on Ubuntu, go to terminal and type the following commands −
$sudo apt-get update
$sudo apt-get install memcached
## Confirming Memcached Installation
To confirm if Memcached is installed or not, you need to run the command given below. This command shows that Memcached is running on the default port 11211.
$ps aux | grep memcached
To run Memcached server on a different port, execute the command given below. This command starts the server on the TCP port 11111 and listens on the UDP port 11111 as a daemon process.
$memcached -p 11111 -U 11111 -u user -d
You can run multiple instances of Memcached server through a single installation.
davidt ¶
пред 13 години
The module also supports SASL authentication, it just isn't documented sadly. You'll need to run the following code:
<?php
$m = new Memcached();
$m->setOption(Memcached::OPT_BINARY_PROTOCOL, true);
$m->setSaslAuthData("user-1", "pass");
?>
You need to enable the "memcached.use_sasl = 1" ini option for memcached in the php.ini file.