Expand description
Resilience Patterns
This module provides production-grade resilience patterns for RustKernels:
- Circuit Breaker: Prevent cascade failures by detecting unhealthy kernels
- Timeout: Deadline propagation and timeout enforcement
- Recovery: Automatic recovery from transient failures
- Health: Health checking for liveness/readiness probes
§Example
ⓘ
use rustkernel_core::resilience::{CircuitBreaker, CircuitBreakerConfig};
let config = CircuitBreakerConfig::default()
.failure_threshold(5)
.reset_timeout(Duration::from_secs(30));
let cb = CircuitBreaker::new("graph/pagerank", config);
// Execute with circuit breaker protection
cb.execute(|| async {
kernel.execute(input).await
}).await?;Re-exports§
pub use circuit_breaker::CircuitBreaker;pub use circuit_breaker::CircuitBreakerConfig;pub use circuit_breaker::CircuitState;pub use health::HealthCheck;pub use health::HealthCheckResult;pub use health::HealthProbe;pub use recovery::RecoveryPolicy;pub use recovery::RecoveryStrategy;pub use recovery::RetryConfig;pub use timeout::DeadlineContext;pub use timeout::TimeoutConfig;pub use timeout::TimeoutError;
Modules§
- circuit_
breaker - Circuit Breaker Pattern
- health
- Health Checking
- recovery
- Recovery Policies
- timeout
- Timeout and Deadline Management
Structs§
- Resilience
Config - Unified resilience configuration
Enums§
- Resilience
Error - Errors from resilience patterns
Type Aliases§
- Resilience
Result - Result type for resilience operations