自动重试带来的异常处理问题

前提:

CS架构,分布式环境

客户端使用自动重试策略

一般服务端返回的不是特定错误时,可以进行重试;

优势:这种自动重试策略,适用于幂等操作,可以排除网络临时问题,对用户透明,只将用户感兴趣的结果返回给用户

劣势:假如某个问题,重试多此仍失败,且客户端在持续重试中,这时如果没有信息反馈给用户是哪个阶段出现错误或异常时,用户只看到程序假死,这时用户去debug时会困难

启示:

自动重试满足一定阈值时,返回给用户一定信息

案例:BookKeeper中Stream下的客户端和服务器端通信时,对某些错误采用自动重试

你可能感兴趣的:(自动重试带来的异常处理问题)