根据AWS团队对无法从ElastiCache集群获取缓存节点的回应,您将
需要使用可选的ShowDetails标志,以
通过describeCacheClusters()方法的Class
DescribeCacheClustersRequest参数
获取CacheNodes信息 。仔细看,尽管确实为此类记录了文档,但没有 ShowDetails
标志:
__
可选的ShowDetails标志可用于检索有关与缓存集群关联的缓存节点的详细信息。详细信息包括缓存节点终结点的DNS地址和端口。
大概这实际上是针对setShowCacheNodeInfo()的,这是
一个可选标志,可以包含在DescribeCacheCluster请求中以检索缓存节点信息 。
因此,AWS团队的反应似乎不准确,实际上是没有解决的问题,为什么法getCacheNodes()从类CacheCluster没有返回的信息,均为对这样的帖子非常不寻常。
无论如何,你可能只是想尝试方法getCacheNodes()从类CacheCluster的方法返回getCacheClusters()从类DescribeCacheClustersResult而是希望它可以作为做广告(即我没有尝试这样做我自己)。
祝好运!
更新资料
这是Sander成功用于实现其目标的代码,确认了上述方法:
AmazonElastiCacheClient client = new AmazonElastiCacheClient(credentials);DescribeCacheClustersRequest dccRequest = new DescribeCacheClustersRequest();dccRequest.setShowCacheNodeInfo(true);DescribeCacheClustersResult clusterResult = client.describeCacheClusters(dccRequest);
缺少的部分应该与他最初的解决方案相似,例如:
List<CacheCluster> cacheClusters = clusterResult.getCacheClusters();for (CacheCluster cacheCluster : cacheClusters) { List<CacheNode> cacheNodes = cacheCluster.getCacheNodes(); System.out.println("List size: " + cacheNodes.size());}


