首页 文章
  • 0 votes
     answers
     views

    RabbitMQ和Spring amqp重试,不会阻止消费者

    我正在使用RabbitMQ和Spring amqp,我宁愿不丢失消息 . 通过使用指数退避策略进行重试,我可能会阻止我的消费者,他们可以处理他们可以处理的消息 . 我想在几天内通过指数退避策略重试失败的消息,但我不希望消费者阻塞几天,我希望它继续处理其他消息 . 我知道我们可以使用ActiveMQ(Retrying messages at some point in the future (Act...
  • 2 votes
     answers
     views

    Spring Batch:在较小的块中重试块与单项处理

    我有一个使用Spring Batch 3.0.6的应用程序 . Spring Batch作业使用块处理 . 提交间隔设置为100,重试限制设置为5 . 当达到提交间隔时,编写器将数据块(100条记录)写入另一个应用程序(通过TCP) . 如果其中一个记录是坏的(无论出于什么原因它会导致异常),那么Spring Batch会尝试将块写入5次(重试限制)并且每次都失败(如预期的那样) . 然后,Sp...
  • 0 votes
     answers
     views

    Spring Batch - 从另一个具有重试机制的Tasklet调用Tasklet?

    在 Spring Batch 我期待实现重试机制 . 我有下面配置的步骤 此批作业实际运行并创建付款CSV文件,并将它放置在我的应用程序服务器的出站文件夹,并通过微进程,我呼吁其拾取的所有文件,并将数据发送到另一台服务器的shell脚本 . 在通过批处理作业执行shell脚本时,某些操作失败,那么我需要实现重试机制 . 如何使用重试机制从另一个Tasklet调用Tasklet? public cl...
  • 0 votes
     answers
     views

    Spring批处理 - 当在writer中抛出异常时,JSR 352重试失败

    我试图调查在编写器中抛出异常时会发生什么 . 根据理论,我期望发生回滚,然后重试块设置提交大小为1.但这不会发生,我收到以下错误 . 我正在使用Spring Batch -JSR 352作业设计 . 在作者中我有3个JDBC调用 . 如果我在成功执行2个JDBC调用后抛出一个可跳过的异常,那么我可以发现Spring批处理无法回滚块的事务并通过将提交大小设置为一个来重试块 . 我收到以下execpt...
  • 2 votes
     answers
     views

    spring @EnableRetry注释抛出错误'rg.springframework.aop.config.internalAutoProxyCreator'

    我创建了示例 Spring-boot 应用程序,它工作正常,没有任何错误, 现在我想练习 spring-retry 来重试一些方法 . 如果我不使用 @EnableRetry 我的应用程序启动没有任何错误但重试不起作用 . 如果我在配置类上使用 @EnableRetry ,我的应用程序无法启动 build.gradle apply plugin: 'java-library' repositor...
  • 3 votes
     answers
     views

    使用spring-amqp和rabbitmq实现带有退避的非阻塞重试

    我正在寻找一种使用spring amqp和Rabbit MQ实现具有退避策略的重试的好方法,但要求是不应该阻止侦听器(因此可以自由处理其他消息) . 我在这里看到了一个类似的问题/答案,但它没有包括'退出'的解决方案: RabbitMQ & Spring amqp retry without blocking consumers 我的问题是: 重试时,默认的spring-retry实现...

热门问题