2
AWS Elasticache RedisクラスターをSpring Bootアプリに接続するにはどうすればよいですか?
Jedis Connection Factoryを使用してRedisクラスターに接続するSpring Bootアプリがあります。 RedisClusterConfiguration redisClusterConfiguration = new RedisClusterConfiguration(redisProperties.getCluster().getNodes()); redisClusterConfiguration.setPassword(redisProperties.getPassword()); jedisConnectionFactory = new JedisConnectionFactory(redisClusterConfiguration); そして、application.ymlからノードのリストを読み取ります: spring: redis: host: 127.0.0.1 port: 6379 timeout: 300s cluster: nodes: 127.0.0.1:6380,127.0.0.1:6381,127.0.0.1:6382 とにかく、AWSでRedisクラスターをホストしているので、Elasticacheに切り替えます。とても簡単にできます。AmazonElastiCache libを使用できる場合。次に、AWS資格情報でElasticacheクラスターに接続し、利用可能なノードをプルしてリストに入れ、次のようにapplication.ymlでハードコーディングする代わりにJedisに渡します。 //get cache cluster nodes using AWS api private List<String> getClusterNodes(){ AmazonElastiCache client = AmazonElastiCacheClientBuilder.standard().withRegion(Regions.DEFAULT_REGION).build(); DescribeCacheClustersRequest describeCacheClustersRequest = new DescribeCacheClustersRequest(); describeCacheClustersRequest.setShowCacheNodeInfo(true); List<CacheCluster> cacheClusterList …