2.2.2. JBoss EAP 中的 MicroProfile 容错
The microprofile-fault-tolerance-smallrye 子系统为 JBoss EAP 中的 MicroProfile 容错提供支持。该子系统仅可在 JBoss EAP XP 流中使用。
The microprofile-fault-tolerance-smallrye 子系统为拦截器绑定提供以下注释:
-
@Timeout -
@Retry -
@Fallback -
@CircuitBreaker -
@Bulkhead -
@Asynchronous
您可以在类级别或方法级别上绑定这些注解。绑定至类的注释适用于该类的所有业务方法。
以下规则适用于绑定拦截器:
如果组件类声明或继承类级别的拦截器绑定,则应用以下限制:
- 不得宣布课程结束。
- 类不得包含任何静态、私有或最终方法。
- 如果组件类的非静态、非专用方法声明了方法级拦截器绑定,则方法或组件类不能最终声明。
容错操作有以下限制:
- 容错拦截器绑定必须应用到 bean 类或 bean 类方法。
- 调用时,调用必须是 Jakarta Contexts 和 Dependency Injection 规范中定义的业务方法调用。
如果满足以下两个条件,则操作被视为容错:
- 该方法本身不与任何容错拦截器绑定。
- 包含该方法的类不绑定到任何容错拦截器。
除了 MicroProfile 容错提供的配置选项之外,microprofile-fault-tolerance-smallrye 子系统还提供以下配置选项:
-
io.smallrye.faulttolerance.globalThreadPoolSize -
io.smallrye.faulttolerance.timeoutExecutorThreads