Amazon dynamodb DAX不';与DynamoDBMapper一起使用时无法获得缓存命中
我正在使用DAX客户端和DyanamoDBMapper。我正在使用以下依赖项Amazon dynamodb DAX不';与DynamoDBMapper一起使用时无法获得缓存命中,amazon-dynamodb,amazon-dynamodb-dax,Amazon Dynamodb,Amazon Dynamodb Dax,我正在使用DAX客户端和DyanamoDBMapper。我正在使用以下依赖项 <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-dynamodb</artifactId> <version>1.11.751</version>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-dynamodb</artifactId>
<version>1.11.751</version>
</dependency>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>amazon-dax-client</artifactId>
<version>1.0.205917.0</version>
</dependency>
亚马逊网站
我是否在这里做错了什么,或者错过了任何配置步骤
还想知道是否有任何方法可以获取每个请求的DAX缓存命中或未命中详细信息,以便调试更容易一些 缓存未命中的原因是DynamoDBQueryExpression在默认情况下将consistentRead标志设置为true
虽然默认情况下DynamoDBMapperConfig进行最终一致读取,但DynamoDBQueryExpression设置为一致读取。因此,如果您使用的是DynamoDBQueryExpression,则必须显式地将consistentRead设置为false
当请求一致的读取时,DAX请求直接转发到DynamoDB,这就是为什么我们在DAX metrics上没有看到缓存命中
AmazonDaxClientBuilder builder = AmazonDaxClientBuilder.standard();
builder.withRegion("<region>");
builder.withEndpointConfiguration("<DAX ednpoint>");
client = builder.build();
DynamoDBMapper dynamoDBMapper = new DynamoDBMapper(client);