Skip to main content

Crate celers_kombu

Crate celers_kombu 

Source
Expand description

Broker abstraction layer (Kombu-style)

This crate provides the abstract interface for message brokers, inspired by Python’s Kombu library. It defines the core traits that all broker implementations must follow.

§Architecture

  • Transport: Low-level broker connection (Redis, AMQP, SQS, Database)
  • Producer: Message publishing interface
  • Consumer: Message consuming interface
  • Queue: Queue abstraction with routing
  • BatchProducer: Batch message publishing interface
  • BatchConsumer: Batch message consuming interface
  • HealthCheck: Health monitoring interface
  • Metrics: Metrics collection interface
  • Admin: Broker administration interface

Modules§

utils
Utility functions for broker operations and analysis.

Structs§

AdaptiveTimeoutMiddleware
Adaptive timeout middleware with dynamic timeout adjustment
AuditMiddleware
Audit middleware for comprehensive audit logging
BackoffMiddleware
Backoff middleware for automatic retry backoff calculation
BackpressureConfig
Backpressure configuration for flow control
BatchAckHintMiddleware
Batch acknowledgment hint middleware
BatchPublishResult
Result of a batch publish operation
BatchingMiddleware
Batching middleware for automatic message batching
BindingConfig
Queue binding configuration
BrokerMetrics
Broker metrics
BulkheadMiddleware
Bulkhead middleware for limiting concurrent operations per partition
CachingMiddleware
Caching middleware for storing message processing results
CircuitBreakerConfig
Circuit breaker configuration
CircuitBreakerMiddleware
Circuit breaker middleware for fault tolerance
CircuitBreakerStats
Circuit breaker statistics
ConsumerGroupConfig
Consumer group configuration
ContentTypeMiddleware
Middleware for content type validation and conversion hints.
CorrelationMiddleware
Correlation middleware for distributed tracing
CostAttributionMiddleware
Cost attribution middleware - track costs per tenant/project
DeadlineMiddleware
Middleware for enforcing hard deadlines on message processing.
DeduplicationMiddleware
Deduplication middleware - prevents duplicate message processing
DlqConfig
Dead Letter Queue (DLQ) configuration
DlqStats
Dead Letter Queue statistics
Envelope
Message envelope (message + metadata)
ErrorClassificationMiddleware
Error classification middleware for intelligent error routing
ExchangeConfig
Exchange configuration
FilterMiddleware
Filter middleware - filters messages based on custom criteria
HealthCheckMiddleware
Health check middleware - automatic health status tracking
HealthCheckResponse
Detailed health check response
IdempotencyMiddleware
Idempotency middleware for ensuring exactly-once message processing
LoadSheddingMiddleware
Load shedding middleware for graceful degradation under pressure
LoggingMiddleware
Logging middleware - logs message events
MessageEnrichmentMiddleware
Message enrichment middleware - automatically adds metadata
MessageOptions
Message-level options
MessagePriorityEscalationMiddleware
Message priority escalation middleware
MessageTaggingMiddleware
Message tagging middleware - automatic message tagging and categorization
MessageVersioningMiddleware
Message versioning middleware - handle message schema versions
MetricsMiddleware
Metrics middleware - collects message statistics
MiddlewareChain
Middleware chain for processing messages
MockBroker
Mock broker for testing
ObservabilityMiddleware
Observability middleware for structured logging and metrics
PartitioningMiddleware
Partitioning middleware for distributed load balancing
PoisonMessageDetector
Poison message detector - identifies repeatedly failing messages
PoolConfig
Connection pool configuration
PoolStats
Pool statistics
PriorityBoostMiddleware
QueueConfig
Queue configuration
QueueInfo
Queue information
QuotaConfig
Quota configuration
QuotaUsage
Quota usage statistics
RateLimitingMiddleware
Rate limiting middleware - enforces message rate limits
ReplayConfig
Replay configuration
ReplayProgress
Replay progress information
ResourceQuotaMiddleware
Resource quota middleware - enforce per-consumer resource limits
RetryLimitMiddleware
Retry limit middleware - enforces maximum retry count
RetryPolicy
Retry policy for connection attempts
RetryStrategyMiddleware
Retry strategy middleware - implements different retry strategies
RoutingKeyMiddleware
Middleware for dynamic routing key assignment.
SLAMonitoringMiddleware
SLA monitoring middleware - track and enforce SLA requirements
SamplingMiddleware
Sampling middleware for statistical message sampling.
ScheduleConfig
Schedule configuration for delayed message delivery
ScheduledMessage
Scheduled message information
SchemaValidationMiddleware
Schema validation middleware - validates message structure and content
TenantIsolationMiddleware
Tenant isolation middleware - provides multi-tenancy support
ThrottlingMiddleware
Throttling middleware with backpressure support
TimeoutMiddleware
Timeout middleware - enforces message processing time limits
TracingMiddleware
Tracing middleware for distributed tracing
TransformationMiddleware
Transformation middleware for message content transformation.
ValidationMiddleware
Validation middleware - validates message structure

Enums§

BrokerError
Broker errors
CircuitState
Circuit breaker state
ConnectionEvent
Connection event
ConnectionState
Connection state
ErrorClass
Error classification categories
ExchangeType
Exchange type for AMQP-style brokers
HealthStatus
Health status of a broker
IsolationLevel
Transaction isolation level
Priority
Priority levels for messages
QueueMode
Queue mode
QuotaEnforcement
Quota enforcement action
RetryStrategy
Retry strategy for intelligent retry handling
TransactionState
Transaction state

Traits§

Admin
Admin trait for broker administration
BatchConsumer
Batch consumer trait (batch message consuming)
BatchProducer
Batch producer trait (batch message publishing)
Broker
Full broker trait (combines producer and consumer)
CircuitBreaker
Circuit breaker trait
ConnectionObserver
Connection state observer trait
ConnectionPool
Connection pool trait
Consumer
Consumer trait (message consuming)
ConsumerGroup
Consumer group trait for load-balanced consumption
DeadLetterQueue
Dead Letter Queue trait for handling failed messages
ExtendedProducer
Extended producer trait with message options support
HealthCheck
Health check trait for brokers
MessageMiddleware
Message middleware for pre/post processing
MessageReplay
Message replay trait for debugging and recovery
MessageScheduler
Message scheduler trait for delayed delivery
MessageTransaction
Message transaction trait for atomic operations
MetricsProvider
Metrics provider trait
MiddlewareConsumer
Consumer with middleware support
MiddlewareProducer
Producer with middleware support
Producer
Producer trait (message publishing)
QuotaManager
Quota management trait
Transport
Transport trait (low-level broker connection)

Type Aliases§

PriorityBoostFn
Priority boost middleware for dynamic priority adjustment
Result