Choose your language
Rust Server Performance Course
Over 2 million learners across the globe

Rust Server Performance Course

Master the tools, techniques, and mental models required to analyse and optimise the performance of Rust-based servers. This course takes you from Rust's ownership model and async runtime internals all the way to production-grade profiling, I/O tuning, and capacity planning. If you write server software and need measurable, defensible performance gains, this is the course that delivers them.

Dedika for businesses

What you will learn:

You will build a rigorous performance engineering workflow covering CPU profiling with perf and flamegraphs, heap profiling with heaptrack, and distributed tracing with the tracing crate and OpenTelemetry. You will learn how Tokio's work-stealing scheduler operates, how to tune TCP socket options, and how to apply zero-copy I/O techniques to reduce CPU overhead. The course covers memory layout, custom allocators, SIMD vectorization, and compiler flags including LTO and PGO. You will benchmark serialisation libraries, profile Axum and Hyper internals, and tune database connection pools with sqlx. By the end, you will be able to identify bottlenecks systematically, implement targeted optimisations, and prevent regressions through automated CI performance gates.

How you study practically Rust Server Performance Course

How you practise Rust Server Performance Course

For companies looking to train their teams

With Dedika for businesses, the course includes exercises and examples tailored to your own business and the way your company needs.

Click here

Course content

8 Chapters • 38 LessonsDuration between 4 and 360 hours (you decide)

Chapter 1See details

Rust Fundamentals for Systems Programmers

  • Lesson 1 • Error Handling and Control Flow

    Teaches Result, Option, and the ? operator for explicit error propagation. Connects reliable error handling to observable server behaviour under load.

  • Lesson 2 • Types, Traits, and Generics

    Introduces Rust's type system, trait-based polymorphism, and monomorphization. Shows how zero-cost abstractions are achieved at compile time.

  • Lesson 3 • Ownership, Borrowing, and Lifetimes

    Covers Rust's core memory model: ownership transfer, shared vs. exclusive borrows, and lifetime annotations. Establishes the safety guarantees that underpin all subsequent performance work.

  • Lesson 4 • Cargo, Crates, and the Build System

    Explains Cargo's dependency resolution, feature flags, and build profiles. Prepares students to configure release builds optimised for performance measurement.

Chapter 2See details

Concurrency Primitives and Async Rust

  • Lesson 1 • Threads and Shared-State Concurrency

    Covers thread spawning, Arc, Mutex, and RwLock for safe shared state. Establishes the baseline concurrency model before introducing async abstractions.

  • Lesson 2 • Tokio Runtime Internals

    Examines Tokio's work-stealing scheduler, task spawning, and I/O driver. Provides the runtime knowledge required to interpret profiling data from async servers.

  • Lesson 3 • Message Passing with Channels

    Teaches mpsc and bounded channels as an alternative to shared state. Connects channel design choices to latency and throughput trade-offs in server pipelines.

  • Lesson 4 • Synchronisation Patterns Under Load

    Analyses contention on locks and channels at high concurrency and introduces lock-free alternatives. Directly prepares students for identifying synchronisation bottlenecks.

  • Lesson 5 • Async/Await and the Future Trait

    Explains how Futures are polled, how async functions desugar, and how executors drive completion. Builds the mental model needed to diagnose async performance issues.

Chapter 3See details

Memory Layout and Allocation Internals

  • Lesson 1 • Stack vs. Heap Allocation

    Contrasts stack and heap allocation costs and explains when each occurs in Rust. Grounds later profiling work in concrete allocation mechanics.

  • Lesson 2 • Collections and Allocation Patterns

    Analyses Vec, HashMap, and String growth strategies and their allocation implications. Teaches pre-allocation and pooling techniques to reduce GC-equivalent pauses.

  • Lesson 3 • Struct Layout and Padding

    Teaches field ordering, alignment rules, and repr attributes that control struct layout. Shows how layout choices affect cache line utilisation and SIMD readiness.

  • Lesson 4 • Custom Allocators and jemalloc

    Introduces the GlobalAlloc trait and demonstrates swapping in jemalloc or mimalloc. Connects allocator choice to measurable latency improvements in server workloads.

Chapter 4See details

Profiling Tools and Measurement Methodology

  • Lesson 1 • Benchmarking with Criterion

    Covers statistical benchmarking using Criterion: setup, measurement, and regression detection. Establishes the baseline measurement discipline required before any optimisation.

  • Lesson 2 • Metrics Collection and Dashboards

    Covers counter, gauge, and histogram metrics using the metrics crate and Prometheus export. Enables continuous performance visibility in production-like environments.

  • Lesson 3 • CPU Profiling with perf and Flamegraphs

    Teaches sampling-based CPU profiling using perf and flamegraph visualisation. Connects hot function identification to targeted optimisation decisions.

  • Lesson 4 • Heap Profiling and Leak Detection

    Uses heaptrack and Valgrind Massif to track allocation frequency and peak memory. Identifies allocation hot spots that degrade server throughput under sustained load.

  • Lesson 5 • Distributed Tracing with tracing Crate

    Integrates the tracing crate for structured, async-aware instrumentation of server requests. Bridges per-function profiling to end-to-end latency analysis across service boundaries.

Chapter 5See details

I/O Performance and Network Optimisation

  • Lesson 1 • Syscall Overhead and Buffering

    Quantifies the cost of read/write syscalls and demonstrates buffered I/O strategies. Establishes why minimising syscall frequency is critical for high-throughput servers.

  • Lesson 2 • TLS Performance Overhead

    Analyzes TLS handshake cost, session resumption, and cipher suite selection using rustls. Quantifies the performance impact of encryption and identifies mitigation strategies.

  • Lesson 3 • Async I/O with Tokio and io_uring

    Compares epoll-based async I/O with io_uring submission queues for reduced syscall overhead. Shows how to select and configure the I/O backend for target workloads.

  • Lesson 4 • Zero-Copy Techniques

    Teaches sendfile, splice, and Bytes-based buffer sharing to eliminate unnecessary data copies. Directly reduces CPU usage and memory bandwidth in file-serving and proxy workloads.

  • Lesson 5 • TCP Tuning and Connection Management

    Covers socket options, connection pooling, and keep-alive configuration for server sockets. Connects TCP-level tuning to observable reductions in connection establishment latency.

Chapter 6See details

CPU and Compiler Optimisation Techniques

  • Lesson 1 • Cache Efficiency and Data Locality

    Teaches cache hierarchy awareness, prefetching, and data structure layout for cache-friendly access. Demonstrates measurable throughput gains from improved spatial and temporal locality.

  • Lesson 2 • SIMD and Vectorization in Rust

    Introduces portable SIMD via std::simd and target-specific intrinsics for data-parallel operations. Applies vectorization to parsing, hashing, and serialization hot paths.

  • Lesson 3 • Compiler Optimization Flags and LTO

    Explains opt-level, codegen-units, and link-time optimization settings in Cargo profiles. Shows how each flag affects binary size, compile time, and runtime performance.

  • Lesson 4 • Inlining, Devirtualization, and PGO

    Controls inlining with attributes, eliminates dynamic dispatch, and applies profile-guided optimization. Demonstrates how each technique reduces instruction count in tight server loops.

  • Lesson 5 • Branch Prediction and Likely Hints

    Analyzes how branch mispredictions degrade throughput and how to restructure code to aid the predictor. Connects perf branch-miss counters to specific code patterns.

Chapter 7See details

Server Framework Internals and Optimization

  • Lesson 1 • Load Testing and Capacity Planning

    Uses wrk, drill, and Grafana k6 to drive load and identify saturation points. Translates load test results into capacity planning decisions and optimization priorities.

  • Lesson 2 • Axum Router and Extractor Performance

    Profiles Axum's routing tree, extractor chain, and state injection overhead. Teaches patterns to minimize per-request allocations and extractor computation.

  • Lesson 3 • Hyper and HTTP/1.1 Pipeline Internals

    Examines Hyper's connection lifecycle, request parsing, and response writing paths. Identifies framework-level overhead that can be reduced through configuration and custom middleware.

  • Lesson 4 • Serialization and Deserialization Tuning

    Benchmarks serde_json, simd-json, and rkyv for request and response payloads. Selects the appropriate serialization strategy based on payload size and latency requirements.

  • Lesson 5 • HTTP/2 Multiplexing and Flow Control

    Covers HTTP/2 stream multiplexing, flow control windows, and header compression in Hyper. Shows how to tune these parameters for high-concurrency API servers.

Chapter 8See details

Advanced Analysis and Production Optimization

  • Lesson 1 • Database Query and Connection Pool Tuning

    Analyzes sqlx and diesel query execution, connection pool sizing, and prepared statement caching. Reduces database-induced latency spikes that dominate server response time.

  • Lesson 2 • Caching Strategies for Server Performance

    Implements in-process LRU caches and distributed caches to reduce redundant computation and I/O. Quantifies cache hit rate impact on throughput and tail latency.

  • Lesson 3 • Performance Regression Testing in CI

    Integrates Criterion benchmarks and load tests into CI pipelines with automated regression gates. Prevents performance degradation from reaching production through systematic gating.

  • Lesson 4 • Architectural Trade-offs and Optimization Strategy

    Frames performance optimization as an economic decision using profiling data and business constraints. Teaches students to prioritize changes by impact, risk, and implementation cost.

  • Lesson 5 • Continuous Profiling in Production

    Deploys always-on sampling profilers such as Pyroscope alongside running servers. Enables detection of performance regressions introduced by code changes in live environments.

Certification

Your valid completion certificate

This course is for you:

  • Backend Engineer: wants to move beyond functional code into measurable performance work.

  • Systems Programmer: transitioning from C or C++ and exploring Rust's performance tooling ecosystem.

  • Site Reliability Engineer: needs to diagnose latency regressions in Rust-based production services.

  • Platform Engineer: responsible for squeezing efficiency out of high-traffic, resource-constrained server infrastructure.

  • Hobbyist Rustacean: building serious side projects and ready to learn professional-grade optimisation techniques.

  • Tech Lead: needs to establish performance standards and review culture across a Rust-focused team.

What our students say

Your lessons are perfect. I purchased the one-year package and finally have the opportunity to follow various topics of my interest without needing to change platforms... I thank you for everything you do, I've already recommended you to other people...
Giulio Carlo
Giulio CarloDigital Marketing Student
I like how the lessons are straight to the point and how I can change chapters and skip content I don't need.
Mariana Ferres
Mariana FerresPhotography Student
I like the content and the way videos are presented and transcribed, which speeds up the process!
Luciana Alvarenga
Luciana AlvarengaNail Design Student
The platform is fast, simple to use. The diversity of content and complementary videos help a lot with learning.
André Felipe
André FelipePrompt Engineering Student

Top training programmes

FAQ

Who is Dedika?

Is the certificate valid in Kenya?

Are the courses free?

What is the course workload?

What are the courses like?

How do the courses work?

What is the duration of the courses?

What is the cost or price of the courses?

What is an EAD or online course and how does it work?

PDF Course