web-dev-qa-db-ja.com

node.jsを使用してElastiCacheクラスターに接続する方法

ElastiCacheはAmazonインスタンスの外部でアクセスすることはお勧めしません であることはわかっているため、Amazon EC2インスタンス内でのみ以下のことを試みます。

9ノードの ElastiCache Redis Cluster があります。 通常のredis実装 を使用して接続しようとすると、 一部の移動エラー がスローされます

@ Miller に従って 再試行戦略メソッド を試しました。 RedisClusternstable および stable(poor man) の実装も試しました。

これらの実装はどれも機能していません。何か提案してください?

13
xameeramir

コードの共有 将来の読者向け:

var RedisClustr = require('redis-clustr');
var RedisClient = require('redis');
var config = require("./config.json");

var redis = new RedisClustr({
    servers: [
        {
            Host: config.redisClusterHost,
            port: config.redisClusterPort
        }
    ],
    createClient: function (port, Host) {
        // this is the default behaviour
        return RedisClient.createClient(port, Host);
    }
});

//connect to redis
redis.on("connect", function () {
  console.log("connected");
});

//check the functioning
redis.set("framework", "AngularJS", function (err, reply) {
  console.log("redis.set " , reply);
});

redis.get("framework", function (err, reply) {
  console.log("redis.get ", reply);
});
20
student