PHP + подключение к Amazon ElastiCache

Я использую следующий код для подключения к Elasticache, установил php-memcached и добавил /etc/php.d/memcached.ini — подключение не вызывает ошибок и, похоже, работает:

  $server_endpoint = "etc-etc-etc.expalp.cfg.apse1.cache.amazonaws.com";
  $server_port = 11211;
  $dynamic_client = new Memcached();
  $dynamic_client->setOption(Memcached::OPT_CLIENT_MODE, Memcached::DYNAMIC_CLIENT_MODE);
  $dynamic_client->addServer($server_endpoint, $server_port);
  $dynamic_client->set('key', 'value', 60);

У меня есть 2 вопроса:

  1. Как узнать, включено ли согласованное хеширование? Я читал о его важности, но не знаю, как его включить или проверить, включено ли оно.

  2. Есть ли способ увидеть, что написано в Elasticache? Я новичок в этом, и я хотел бы иметь возможность подтвердить, что данные записываются в кеш.

благодарю вас


person Adam    schedule 27.01.2013    source источник


Ответы (2)


  1. Это обрабатывается параметром ini Подробнее в руководство
  2. Я полагаю, что лучший способ - использовать клиентские инструменты memcached. Или просто сделать тест, вы получаете обратно то, что вы пишете?
person datasage    schedule 27.01.2013

Попробуй это:

<?php

$server_endpoint = "xxx.xx.xfg.sae1.cache.amazonaws.com";
$server_port = 11211;

if (version_compare(PHP_VERSION, '5.4.0') < 0) {
    //PHP 5.3 with php-pecl-memcache
    $client = new Memcache;
    $client->connect($server_endpoint, $server_port);
    //If you need debug see $client->getExtendedStats();
    $client->set('myKey', 'My Value PHP 5.3');
} else {
    //PHP 5.4 with php54-pecl-memcached:
    $client = new Memcached;
    $client->addServer($server_endpoint, $server_port);
    $client->set('myKey', 'My Value PHP 5.4');
}

echo 'Data in the cluster: [' . $client->get('myKey') . ']';
person gpupo    schedule 19.08.2013