Skip to main content

Module resilience

Module resilience 

Source
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
ring_health
Health monitoring and resilience infrastructure for RingKernel.
ring_rate_limiting
Rate limiting for enterprise workloads.
ring_timeout
Operation-level timeouts and deadline management.
timeout
Timeout and Deadline Management

Structs§

ResilienceConfig
Unified resilience configuration

Enums§

ResilienceError
Errors from resilience patterns

Type Aliases§

ResilienceResult
Result type for resilience operations