Async Rust

Create an HTTP Load Generator you own this product

This free project is part of the liveProject series A Load Test CLI with Async Rust
prerequisites
intermediate Rust
skills learned
concurrent programming • async with Tokio • use hyper
Marco Amann
1 week · 4-6 hours per week · BEGINNER

placing your order...

Don't refresh or navigate away from the page.
This free project is part of the liveProject series A Load Test CLI with Async Rust explore series
Check your email for instructions on accessing Create an HTTP Load Generator (liveProject)
continue shopping
adding to cart

choose your plan

team

monthly
annual
$49.99
$499.99
only $41.67 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free eBook every time you renew
  • choose twelve free eBooks per year
  • exclusive 50% discount on all purchases
  • Create an HTTP Load Generator eBook for free
Look inside

Svalbard Inc.’s Scandinavian furniture is quickly becoming a living room staple in homes across the globe. To tame the cost of its success, the company has decided to migrate from expensive-to-scale legacy mainframes to a more flexible, modern deployment model. Your task is to implement continuous load testing and reporting. Using hyper and Tokio, you’ll send HTTP requests as you create a proof of concept. You’ll drive multiple concurrent connections using Tokio, gather and improve metrics from these connections by designing an asynchronous execution flow, and add robust error handling. When you’re finished, you’ll have a fully functioning, scalable HTTP load-test application.

project author

Marco Amann

Marco Amann is a software engineer at AxonIQ where he develops robust distributed systems. He has leveraged Rust in both professional and personal endeavors to build applications spanning a wide range of areas. He has co-authored a German language book about Rust, and spoken at workshops and conferences on topics such as embedded Rust on an STM32 and making APIs safer by adhering to rules about borrowing. Visit his blog at amann.dev.

prerequisites

This liveProject is for Rust programmers who are familiar with Rust syntax and its ownership system and who want to write reliable, efficient code. To begin these liveProjects you’ll need to be familiar with the following:

TOOLS
  • intermediate Rust
  • Cargo
  • CLIs
  • Your favorite IDE or editor
TECHNIQUES
  • HTTP basics
  • Testing basics
  • Multi-threading basics

you will learn

In this liveProject, you’ll learn to build a fully functioning, scalable HTTP load test application—an essential component of a successful migration.

  • Use hyper as an HTTP client
  • Drive several connections at the same time using Tokio
  • Design an asynchronous execution flow to collect metrics about connections
  • Parse CLI parameters and report findings
  • Test your application

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
RECENTLY VIEWED