当前位置: 首页 > 面试题库 >

使用Java查找AWS ElastiCache终端节点

逄岳
2023-03-14
问题内容

我正在尝试使用最新的Java AWS开发工具包以编程方式从我的Java应用程序中获取ElastiCache端点的列表。事情似乎不起作用-
我可以找到一个有效的CacheCluster,但是当我列出其节点时,它为空。这是我的代码:

CacheCluster cc = it.next();

System.out.println("Cache node type: " + cc.getCacheNodeType());
System.out.println("Number cache nodes: " + cc.getNumCacheNodes());

List<CacheNode> listCache = cc.getCacheNodes();

System.out.println("List size: " + listCache.size());

运行它时,得到以下输出:

Cache node type: cache.m1.small 
Number cache nodes: 1 
List size: 0

这似乎很简单,但似乎不起作用。我已经启动了一个具有单个节点的ElastiCache群集,但是当我调用getCacheNodes()时,该列表显示为空。我尝试在本地和EC2实例上运行此代码,两次都得到相同的结果。

关于我可能做错了什么的任何想法?


问题答案:

根据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());
}


 类似资料:
  • 问题内容: 我想获取所有属于以下子项的标签: 我知道如何找到像这样的特定类的元素: 但是我不知道如何找到所有的孩子,而不是其他孩子。 就像我想选择: 问题答案: 尝试这个

  • 我有一棵树。此树中的所有节点都有一些真/假值、一个元素和父/子指针。此树中的一个元素的true/false值设置为true。我想找到从根到这个唯一节点的路径(元素序列)。如果我的树是这样的: 特殊节点是H,我的算法将返回字符串“ACEGH”。我已经使用DFS实现了这一点。但是,我当前的算法是从错误路径添加节点元素。因此,我当前的算法将返回:“ABDCEFGHI”。

  • 问题内容: 我正在使用JSON.NET库。我创建了几个JObjects并将它们添加到JArray中。 现在,我想找到一个文本(JProperty)为的JObject 。如何通过使用JProperty在JArray中找到JObject。 问题答案: 您可以这样找到它: 这将找到第一个在有一个命名属性与值。如果不存在,则为null。

  • 所以我尝试了这个在线挑战,但得到了运行时错误。请帮忙。我是编程新手。我附上了问题陈述和我的解决方案。 挑战使用Java语言,让函数取一个四位数的整数(至少有两位是不同的),并对该数字执行以下例程: 按降序和升序排列数字 注:在6174上表演例行公事总是会给你6174 (7641 - 1467 = 6174)。 例如:如果为则程序应返回:(通过1)5432-2345=3087,(通过2)8730-0

  • 假设我有以下XML文档: 使用REST assured的我想阅读所有

  • 我已经花了几个小时试图找到使用Selenium WebDriver查找元素的方法。我假设我需要使用driver.find元素(By.xpath ("")), 但我不太确定如何使用。 我需要找到并单击“clickon”元素。问题是该元素的一部分正在更改(请参见屏幕截图),我需要从文件中提取并放入xpath。 我将感谢任何帮助。