Не удается подключить Redis Cluster в Elasticache к PHP с помощью библиотеки phpredis

Я могу подключиться к кластеру Redis в Elasache с экземпляром EC2 (приведенным в документации AWS) и могу добавлять и получать ключи, значения. Но когда я пытаюсь подключиться через phpredis к тому же экземпляру ec2, я не получаю ни ошибки, ни данных. Пожалуйста, помогите мне с этим. В интернете мало информации по этой конкретной проблеме. Я могу подключиться к Redis, работающему на том же экземпляре ec2, но не к эластичной боли. Если бы я мог получить пример того, как, кроме как изменить хост (конечная точка кластера Redis).
Спасибо

0

Решение

  1. использование Predis библиотека.

  2. Подключитесь к Redis ElastiCache Endpoint в режиме кластера с помощью Predis, см. Пример ниже.

    try{
    // Put your AWS ElastiCache Configuration Endpoint here.
    $servers  = ['aliceredis.8xyzwu.clustercfg.euw2.cache.amazonaws.com:6379'];
    // Tell client to use 'cluster' mode.
    $options  = ['cluster' => 'redis'];
    // Create your redis client
    $redis = new Predis\Client($servers, $options);
    
    // Do something you want:
    // Set the expiration for 7 seconds
    $redis->set("tm", "I have data for 7s.");
    $redis->expire("tm", 7);
    $ttl = $redis->ttl("tm"); // will be 7 seconds
    
    // Print out value of the key 'tm'
    var_dump(array("msg"=>"Successfully connected to Redis Cluster.", "val"=>$redis->get("tm"))) ;
    
    }
    catch(Exception $ex){
    echo ('Error: ' . $ex->getMessage() ); // output error message.
    }
    
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]