Redis
 sql >> база данни >  >> NoSQL >> Redis

Връзката с Redis клъстер не бе успешно

Добре, мисля, че тук има объркване.

Разгръщането на Redis Cluster не е същото като редица стандартни копия на Redis, защитени от Sentinel. Две много различни неща.

Опцията за разгръщане чрез щракване на GCE разгръща редица стандартни копия на Redis, защитени от Sentinel, а не от Redis Cluster.

ioredis може да обработва и двата вида разгръщания, но трябва да използвате съответния API. Тук се опитвахте да използвате API на Redis Cluster, което води до тази грешка (свързаните с клъстера команди не са активирани за стандартни екземпляри на Redis).

Според документацията на ioredis, трябва да се свържете с:

var redis = new Redis({
    sentinels: [{ host: hostMaster, port: 26379 },
                { host: hostSlab1, port: 26379 },
                { host: hostSlab2, port: 26379 } ],
    name: 'mymaster'
});

Разбира се, проверете сентинел портовете и името на главния. ioredis ще управлява автоматично превключването към подчинен екземпляр, когато главният се повреди, а сентинелът ще гарантира, че подчинението е повишено като главен точно преди това.

Имайте предвид, че тъй като използвате pub/sub, ще ви трябват няколко връзки за redis.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Как да запазите и извлечете низ с акценти в redis?

  2. HSET, ако съществува ключ

  3. конвейер срещу транзакция в redis

  4. Heroku:Фонови задачи в Python с RQ

  5. Използване на Redis за кеширане на SQL резултат