The Rust Book is an incredible resource. Combined with Rustlings, a developer can learn quite about about the Rust programming language. I created this repo for those of you who want examples on Rust concepts that go a bit deeper in some areas and delve into third-party crates for some common use cases.
Build a small pubsub system with subscribers running on separate threads. The publisher can send text messages to all subscribers, as well as signal them to gracefully shutdown.
Learn about an Async Mutex by creating your own. This Mutex is heavily inspired by Tokio's Mutex.
Create a benchmark for the Async Mutex we created and compare against Tokio's Mutex, Rust's std Mutex, and Parking Lot's Mutex and analyze the results. Generate a flamegraph of the benchmarks.
Benchmark with Criterion and Cargo Flamegraph
- Benchmarking with Criterion
- Performance Analysis with cargo-flamegraph and DHAT
- Basic GitHub Actions CI Setup (format, clippy, test, codecov, cargo-udeps, cargo-deny)
- Comparing
iter()
tointo_iter()
- Testing with cargo-nextest
- Optimizing Rust Code: Basic
- Optimizing Rust Code: Avoiding Allocations
- Optimizing Rust Code: Parallelizing with Rayon and Crossbeam
- Optimizing Rust Code: Inlining Functions
- Implementing io_uring in Rust
- Write a Derive Procedural Macro for the NewType Pattern
- Execute Code in Wasmtime Runtime
- Basic Cryptography