Skip to content
rusthacks.dev
Topic

Architecture

How to carve a growing Rust codebase into crates and modules that a team can still reason about.

Flat illustration for the post “Fan Out and Fan In Work Pipelines in Rust Services Design”, composed around threads.
Architecture

Fan Out and Fan In Work Pipelines in Rust Services Design

Split work across a bounded pool of workers and merge the results: a producer, bounded channels for backpressure, N workers, a collector and clean shutdown. A Tokio pipeline with ordering, errors and cancellation handled.

5 min read
Flat illustration for the post “Observability Architecture for Rust Services Explained”, composed around deploy.
Architecture

Observability Architecture for Rust Services Explained

Logs, metrics and traces answer different questions. Wire them together with tracing and OpenTelemetry in a Rust service: one instrumentation API, a collector, context propagation across services and sensible sampling.

5 min read
Flat illustration for the post “Circuit Breakers and Bulkheads in Rust Service Clients”, composed around architecture.
Architecture

Circuit Breakers and Bulkheads in Rust Service Clients

Stop one failing dependency from taking the whole service down. A circuit breaker fails fast after repeated errors and probes for recovery; a bulkhead caps concurrency per dependency. Implement both with Tokio.

5 min read
Flat illustration for the post “Background Job Queues in Rust Compared by Trade Off”, composed around architecture.
Architecture

Background Job Queues in Rust Compared by Trade Off

Pick a background job system for a Rust service: an in-process Tokio channel, a database table with SKIP LOCKED, Redis queues, or a broker. Compare durability, retries, scale and operational cost.

3 min read

Get new posts by email

We send one email when a new post is published. No spam.

Unsubscribe in one click. No spam, ever.