mirror of
https://github.com/jlengrand/helidon.git
synced 2026-03-10 08:21:17 +00:00
Fault Tolerance SE Documentation (#2399)
* Initial draft. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * New section and fixed some typos. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * Some new sections and a new file name. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * Links to Javadocs. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * Updated sitegen.yaml with new entry for FT. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * Updated sitegen.yaml with new entry for FT. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * Updates to the Handler Composition section with new example. Some minor fixes in Javadocs referenced from this document. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * Some minor rewording in Bulkhead section. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com> * A couple of more typos. Signed-off-by: Santiago Pericasgeertsen <santiago.pericasgeertsen@oracle.com>
This commit is contained in:
committed by
GitHub
parent
64f3e04916
commit
24e39b9710
@@ -125,6 +125,10 @@ public interface Bulkhead extends FtHandler {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides statistics during the lifetime of a bulkhead, such as
|
||||
* concurrent executions, accepted/rejected calls and queue size.
|
||||
*/
|
||||
interface Stats {
|
||||
|
||||
/**
|
||||
|
||||
@@ -26,7 +26,7 @@ import io.helidon.common.LazyValue;
|
||||
|
||||
/**
|
||||
* CircuitBreaker protects a potentially failing endpoint from overloading and the application
|
||||
* from spending resources on such a failing endpoints.
|
||||
* from spending resources on those endpoints.
|
||||
* <p>
|
||||
* In case too many errors are detected, the circuit opens and all new requests fail with a
|
||||
* {@link io.helidon.faulttolerance.CircuitBreakerOpenException} for a period of time.
|
||||
@@ -64,7 +64,11 @@ public interface CircuitBreaker extends FtHandler {
|
||||
void state(State newState);
|
||||
|
||||
/**
|
||||
* {@link io.helidon.faulttolerance.CircuitBreaker} states.
|
||||
* A circuit breaker can be in any of 3 possible states as defined by this enum.
|
||||
* The {@link State#CLOSED} state is the normal one; an {@link State#OPEN} state
|
||||
* indicates the circuit breaker is blocking requests and {@link State#HALF_OPEN}
|
||||
* that a circuit breaker is transitioning to a {@link State#CLOSED} state
|
||||
* provided enough successful requests are observed.
|
||||
*/
|
||||
enum State {
|
||||
/**
|
||||
|
||||
@@ -28,7 +28,7 @@ import io.helidon.common.reactive.Multi;
|
||||
import io.helidon.common.reactive.Single;
|
||||
|
||||
/**
|
||||
* Fallback allows the user to execute an alternative supplier of results in case the usual one fails.
|
||||
* Fallback allows the user to execute an alternative function in case the provided supplier fails.
|
||||
* <p>
|
||||
* In case you call the {@link #invokeMulti(java.util.function.Supplier)} method, the following restriction applies:
|
||||
* <ul>
|
||||
|
||||
@@ -22,7 +22,7 @@ import java.util.concurrent.ScheduledExecutorService;
|
||||
import io.helidon.common.LazyValue;
|
||||
|
||||
/**
|
||||
* Timeout attempts to terminate execution after the duration time passes.
|
||||
* Timeout attempts to terminate execution after a duration time passes.
|
||||
* In such a case, the consumer of this handler receives a {@link io.helidon.common.reactive.Single}
|
||||
* or {@link io.helidon.common.reactive.Multi} with a {@link java.util.concurrent.TimeoutException}.
|
||||
*/
|
||||
|
||||
@@ -15,6 +15,6 @@
|
||||
*/
|
||||
|
||||
/**
|
||||
* Fault tolerance for Helidon reactive implementation.
|
||||
* Fault tolerance for Helidon SE reactive implementation.
|
||||
*/
|
||||
package io.helidon.faulttolerance;
|
||||
|
||||
Reference in New Issue
Block a user