DAX 间歇性 无可用端点

use*_*327 5 java amazon-dynamodb amazon-dynamodb-dax

设想:

我们有一个流式 Java 应用程序,它使用最新的 DAX 客户端实例通过 DAX 对 DynamoDB 执行读/写请求。在执行简单的集成测试和性能测试时,我们会间歇性地看到有关没有可用端点的异常。

com.amazonaws.AmazonClientException: Unable to call cluster endpoint: No endpoints available
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$ClusterReadRetryHandler.check(ClusterDaxClient.java:699)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient.invoke(ClusterDaxClient.java:649)
....    
IOException: No endpoints available
at com.amazon.dax.client.cluster.Cluster.readClient(Cluster.java:680)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$2.getClient(ClusterDaxClient.java:138)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient.invoke(ClusterDaxClient.java:631)
... 23 more
Run Code Online (Sandbox Code Playgroud)

To clarify, intermittent meaning that some requests will be successful, then some will fail, only to have the requests once again be successful all within a single test (integration or performance). In fact, the majority of these test runs will be successful w/out ever seeing this error but it does occasionally happen as described in the last sentence.

The dev instance of the DAX and DynamoDB are standing instances, meaning that running these tests does not re-infrastructure/deploy either the DAX or DynamoDB instances for a clean slate (they are left up and running between test runs).

Question:

有没有其他人在 DAX 的小规模测试(例如集成/e2e 测试)或大规模测试(例如性能测试)中看到这种间歇性行为的类似模式?我知道这已经在人们无法连接到 DAX 的场景的其他票证上进行了讨论,但是我没有看到任何问题或场景识别出这样的间歇性行为。