`

spring retry开源项目

 
阅读更多
新发现个spring 的retry项目,地址在:
https://github.com/spring-projects/spring-retry,
实现的功能是比如对于耗费资源的可以进行多次重试,比如:

@Configuration
@EnableRetry
public class Application {

    @Bean
    public Service service() {
        return new Service();
    }

}

@Service
class Service {
    @Retryable(RemoteAccessException.class)
    public void service() {
        // ... do something
    }
    @Recover
    public void recover(RemoteAccessException e) {
       // ... panic
    }
}


   当sevice方法比如要调用webservice,rmi之类的,并且以失败抛出
RemoteAccessException.,则默认重新尝试执行3次,并且如果还不成功,则执行
recover方法恢复
分享到:
评论

相关推荐

    spring-retry,.zip

    Spring Retry是Spring生态系统中的一个开源项目,它提供了声明性的重试支持,帮助开发者优雅地处理这些临时故障,提高系统的稳定性和可靠性。本文将深入探讨Spring Retry的核心概念、使用方法以及其在实际应用中的...

    spring-retry-example:Spring重试和番石榴重试演示

    目前有两个开源的类库spring retry and guava retry都支持编程式,spring retry更加融合spring的aop注解驱动,使用更加的方便。模拟异常场景为了实现demo,模拟了异常的场景异常调用...

    smart-retry:Smart Retry主要是用来进行任务重试的。和Guava Retry、Spring Retry相比,Smart Retry最大的特点是异步重试,支持持久化,系统重启之后可以继续重试

    市面上开源的重试框架有很多,如Guava Retry、Spring Retry等都支持重试,但是他们都不支持任务的持久化,系统更新重启,重试任务就会丢失,这无法保证数据的一致性。传统的做法是写一个定时任务,定时补偿。但这样...

    spring整合rabbitmq需要的jar包(spring版本4.2.0)

    3. **spring-retry-1.1.2.RELEASE.jar**:Spring Retry库是Spring的一个扩展,用于处理可能出现的重试需求。在RabbitMQ中,由于网络问题或暂时的服务不可用,消息的发送和接收可能会失败。Spring Retry提供了一种...

    声明式的重试类库Spring-Retry.zip

    Spring提供的声明式的重试类库。示例代码:@Configuration @EnableRetry public class Application {  @Bean  public Service service() {  return new Service();  } } @Service class Service { ...

    Spring Batch in Action英文pdf版

    Spring Batch是一个开源的轻量级、全面的批处理框架,它是为了解决企业应用中的大规模数据处理需求而设计的。Spring Batch in Action是一本专注于Spring Batch框架的书籍,由Arnaud Cogoluègnes、Thierry Templier...

    spring-cloud.docx

    同时,通过添加 spring-retry 依赖,可以实现请求的自动重试,增强服务的健壮性。 **Hystrix 断路器** 当服务出现异常或响应时间过长时,Hystrix 会打开断路器,避免对其他服务造成影响。断路器模式下,请求会被...

    javaweb数据分析项目源码-spring-boot-learning-examples:SpringBoot工程实践,快速上手Spring

    java web数据分析项目源码 最全的Spring ...Dubbo(阿里开源的分布式服务治理框架) └── Kafka └── RocketMQ └── Sharding-JDBC └── Disconf └── Elsaticsearch └── Elsatic-job └── Re

    spring boot dubbo 集成 脚手架

    4. Spring Cloud与Dubbo集成:如果项目已经使用Spring Cloud,可以通过Spring Cloud Alibaba项目实现Spring Cloud和Dubbo的集成。 六、最佳实践 1. 使用配置中心如Nacos,统一管理配置,便于服务的动态扩展和更新。...

    Spring Batch 演示

    Spring Batch 是一个强大的开源批处理框架,由 Spring 社区开发并维护,它为构建高效、可扩展的批处理应用提供了全面的支持。在本“Spring Batch 演示”中,我们将深入探讨 Spring Batch 的核心概念、关键组件以及...

    rabbitmq 所需jar包

    4. spring-retry-1.2.1.RELEASE.jar:Spring Retry是一个Spring框架的扩展,用于处理服务调用时可能出现的临时性失败。在与RabbitMQ交互时,由于网络问题或服务器暂时不可用,可能会出现重试的情况。这个库提供了一...

    spring-boot集成RabbitMQ

    Spring AMQP 提供了许多高级特性,如 DLQ(Dead Letter Queue)、TTL(Time To Live)、Retry Policy 和 Confirm/CNACK 机制等,可以根据实际需求进行配置和使用。 通过以上步骤,你就成功地在 Spring Boot 项目中...

    spring_c3p0_配置

    Spring框架是一个开源的Java平台,它提供了一种全面的方式来构建应用程序。Spring的核心特性包括依赖注入(Dependency Injection, DI)和面向切面编程(Aspect Oriented Programming, AOP),这些特性帮助开发者更...

    RabbitMQ-3.4.1安装文件+Spring-rabbit+RabbitMQ-3.4.1安装手册

    RabbitMQ是一个开源的消息队列系统,基于AMQP(Advanced Message Queuing Protocol)协议,被广泛用于分布式系统中的消息传递。它允许应用程序之间异步通信,提高了系统的可伸缩性和容错性。RabbitMQ 3.4.1是其历史...

    微服务架构面试专题系列:Dubbo+Spring Boot+Spring Cloud.zip

    2. **约定优于配置**:解释Spring Boot的这一设计原则,如何通过默认配置简化项目初始化。 3. **内嵌式Web服务器**:了解如何使用内嵌的Tomcat或Jetty,以及如何自定义服务器端口和配置。 4. **健康检查与Actuator**...

    阿里开源的额高性能 RPC 框架.zip

    4. **开源项目**:作为一个开源项目,Dubbo遵循Apache License 2.0协议,其源代码透明,社区活跃,持续更新和完善,允许开发者根据自身需求进行定制和扩展。 5. **服务注册与发现**:Dubbo支持多种注册中心,如...

    spring4+atomikos实现分布式事务

    Atomikos是一款开源的事务处理监控器(Transaction Processing Monitor,TPM),它支持JTA(Java Transaction API)标准,能够为分布式环境提供强大的事务管理能力。JTA允许应用程序在不同的资源管理器(如数据库)...

    Spring Batch 2.1.8

    Spring Batch 是一个强大的开源框架,专门用于处理批量数据处理任务。在版本 2.1.8 中,它提供了丰富的功能和稳定性的保障,是企业级应用中进行批量操作的首选解决方案。Spring Batch 的核心设计原则是可重试、可跳...

    spring-batch

    Spring-Batch 是一个开源框架,专门用于处理批量处理任务,它是Spring生态系统的组成部分。这个框架在1.0版本时就已经存在,尽管目前的版本已经更新到了2.0,但了解1.0版本对于理解其发展过程和核心概念仍然有价值。...

Global site tag (gtag.js) - Google Analytics