重试工具类

  1. 使用 guava retry 工具包
com.github.rholder guava-retrying 2.0.0
  1. 简单的 retry 工具类,如下:
public abstract class RetryOperation {
    public boolean execute(int retryCount, int waitTime, TimeUnit timeUnit) {
        int count = 0;
        boolean isSuccess = false;
        while (retryCount > count) {
            try {
                isSuccess = process();
                if (isSuccess) {
                    break;
                }
            } catch (Exception e) {
                LOGGER.info("execute exception", e);
            }
            try {
                timeUnit.sleep(waitTime);
            } catch (InterruptedException e) {
                Thread.currentThread().interrupt();
                throw new RuntimeException(e);
            }
            count++;
            LOGGER.info("retry count {}", count);
        }
        return isSuccess;
    }

    public abstract boolean process() throws Exception;
posted @   大熊猫同学  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
历史上的今天:
2022-09-04 搜索业务各指标
点击右上角即可分享
微信分享提示