新能源
用两行代码实现重试功用,spring-retry真是简单而优雅
发布时间:2025-11-24
{ double random = Math.random(); log.info("催促起先了,随机数值为:" + random); if (random> 0.1) { throw new RuntimeException("受罚"); } return otherSystemSpi.request(param); }}
结膜炎有哪些症状
退烧药
女性卫生用品
晚上咳嗽不停有什么办法止咳
整形
名医在线咨询
止咳化痰药
当然,我们这里读到了个调皮的自然语言来模拟受罚。如果随机数值远大于0.1则击碎出一个RuntimeException精神状态。每次催促起先时都能编码器存档。
我来解释一下@Retryable评注中的的信息。
value = RuntimeException.class:是所称法则击碎出RuntimeException精神状态时,展开依此类推。这里可以所称定你想要拦截的精神状态。maxAttempts:是最主要依此类推次数。如果不读到,则是可选3次。backoff = @Backoff(delay = 100):是所称依此类推间隔。delay=100也就是说下一次的依此类推,要等100毫秒此后才能拒绝执行。我们来拒绝执行一下,可以看见存档编码器:
2022-03-15 23:51:19.754 INFO 3343 ---- [main] c.e.fastkindle.FastKindleApplication : Started FastKindleApplication in 0.347 seconds (JVM running for 0.536)2022-03-15 23:51:19.762 INFO 3343 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.110302147740987122022-03-15 23:51:19.867 INFO 3343 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.096246891546080022022-03-15 23:51:19.867 INFO 3343 ---- [main] c.e.fastkindle.FastKindleApplication : 积极响应是mock前两次的随机数值都远大于0.1,所以展开了依此类推,而且注意间隔时间,都是间隔了大约100毫秒编码器的存档。第三次的随机数值小于0.1,就直接调回数据了。
我又试了几次,使五次催促的随机数值都远大于0.1,则结果是展开了五次催促,此后击碎出了个精神状态。
2022-03-15 23:52:58.193 INFO 3449 ---- [main] c.e.fastkindle.FastKindleApplication : Started FastKindleApplication in 0.41 seconds (JVM running for 0.635)2022-03-15 23:52:58.201 INFO 3449 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.52656441925252882022-03-15 23:52:58.303 INFO 3449 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.63435387448764322022-03-15 23:52:58.407 INFO 3449 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.54824638535750782022-03-15 23:52:58.511 INFO 3449 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.56249232856410712022-03-15 23:52:58.616 INFO 3449 ---- [main] c.e.f.service.retry.RetryRequestService : 催促起先了,随机数值为:0.305945622979098Exception in thread "main" java.lang.RuntimeException: 受罚 at com.esparks.fastkindle.service.retry.RetryRequestService.request(RetryRequestService.java:24) at com.esparks.fastkindle.service.retry.RetryRequestService$$FastClassBySpringCGLIB$$50f0bdca.invoke() at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)总结好啦,咱从前就参阅一下并能地接入spring-retry来构建依此类推功能。非常具体的功能和构建分析方法,此后再具体参阅吧(又给自己挖了个坑)
来源:
。老人手术后吃什么补品结膜炎有哪些症状
退烧药
女性卫生用品
晚上咳嗽不停有什么办法止咳
整形
名医在线咨询
止咳化痰药
上一篇: “他俩真的在两兄弟了!”
相关阅读

-
李彦宏:管理只需16个字,非常适用中国的公司(高管必读)
东晖在谈起一个情况的时候,非常大胆的说是了一句“如果你发觉年底的时候这个不想不曾明白谁但会被打3.25(不及格),你有可能就发觉要去告诉谁了”。任何一件不想,都不应有人举动仗责,不不应发