java封装借助什么实现的_借助故障安全,Java中的处理故障变得更加轻松

java封装借助什么实现的

认识Failsafe ,这是一个轻量级的,零依赖的库,用于处理Java 8+中的故障。

故障安全还提供了用于处理日常用例的简洁API,以及处理其他所有内容的灵活性。

其背后的概念非常简单–它通过将可执行逻辑与一个或多个弹性策略包装在一起来工作,这些弹性策略可以根据需要进行组合和组合 。 而且,它提供的功能使您可以与各种方案集成。

让我们仔细看看该工具所提供的功能。

特点

故障策略–故障安全使用策略来处理故障。 默认情况下,策略将任何Exception视为失败。 但是,也可以将策略配置为处理更具体的故障或状况。

重试–重试策略表示何时应针对执行失败执行重试。 默认情况下,一个RetryPolicy将最多执行3次执行尝试。 您可以配置最大尝试次数或重试次数。

断路器–断路器允许您通过暂时禁用执行来创建快速故障的系统,以防止系统过载。 当断路器上配置的执行失败阈值发生时,电路断开,并且进一步执行请求失败,并带有CircuitBreakerOpenException。 延迟之后,电路将半开,并尝试执行以确定该电路是应该闭合还是再次断开。 如果试用执行达到成功阈值,断路器将再次闭合,执行将照常进行。

后备–后备使您可以为执行失败提供替代结果。 它们还可以用于抑制异常并提供默认结果。

策略组合–策略可以以任何所需的方式组合,包括多个相同类型的策略。 策略以相反的顺序处理执行结果,类似于功能组合的工作方式。

可配置的调度程序–默认情况下,Failsafe使用ForkJoinPool的公共池执行异步执行,但您也可以配置要使用的特定ScheduledExecutorService,自定义Scheduler或ExecutorService。

事件监听器– Failsafe在顶级Failsafe API和不同的Policy实现中都支持事件监听器。 在顶层,它可以通知您所有策略的执行完成时。 当所有策略的执行成功完成或任何策略的执行失败时,它也可以通知您。 在此处查看所有相关功能。

执行上下文–故障安全可以提供一个ExecutionContext,其中包含与执行相关的信息,例如执行尝试的次数以及开始和经过的时间

异步API集成–故障安全可以与通过回调报告完成情况的异步代码集成。 runAsyncExecution,getAsyncExecution和futureAsyncExecution方法提供了一个AsyncExecution引用,该引用可用于手动安排重试或从异步回调内部完成执行。

CompletionStage集成–故障安全可以接受CompletionStage并返回带有内置故障处理功能的新CompletableFuture。

库和API集成–对于库和公共API开发人员,Failsafe可以很好地集成到现有API中,从而使您的用户可以为不同的操作配置重试策略。 一种集成方法是对RetryPolicy类进行子类化,并将其作为API的一部分公开,而其余的Failsafe仍保留在内部。 另一种方法是使用Maven阴影插件之类的东西来根据需要将Failsafe类重命名并重新定位到项目的包结构中。

前往GitHub存储库以获取有关这些功能的所有信息以及更多信息

还请参见:

入门

故障安全入门非常简单。 在此处下载最新的Failsafe Maven依赖项并将其添加到您的项目中。

翻译自: https://jaxenter.com/failsafe-failure-handling-java-154932.html

java封装借助什么实现的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值