如果DAX出现问题,配置使用DAX的(golang)客户端回退到DynamoDB的最佳方法是什么?
在初始化期间,我的服务检查DAX是否可用,如果可用,它将初始化其配置以向DAX发送请求。如果在我初始化时DAX不可用,则它将跳过DAX并直接执行DynamoDB。
但是,如果DAX在服务初始化后不可用,则请求将开始失败。我不相信DAX具有100%的正常运行时间,因此在使用DAX初始化服务之后,处理DAX故障的推荐方法是什么?
最佳答案
我的方法是初始化DAX客户端和DynamoDB客户端,并将我的所有DAX调用都包装在try-catch块中,这些块又回到Dynamo客户端。
我正在使用DynamoDBMapper(在Java中),我的代码如下所示:
Object obj;
try {
obj = daxMappedClient.load(Object.class, key);
...
} catch (Exception e) { // DAX failed here
obj = dynamoMappedClient.load(Object.class, key);
...
}
如果有人知道DAX在内部处理此问题的方法,那真是太好了!
关于go - 如何配置客户端从dax回退到直接dynamodb?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51785541/