Skip to content

WarriorsSami/rust-tapi-chronicles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

rust-tapi-chronicles

A collection of Rust programming challenges demonstrating various concepts including async I/O, concurrent processing, and multi-producer/consumer patterns.

Challenges

1. Apache Log Parser

Async log streaming and categorization by log level from remote Apache logs.

Key concepts: Tokio async runtime, streaming HTTP requests, regex pattern matching, file I/O

View details →

2. Linux Log IP Parser

IPv4 address extraction and frequency analysis from Linux system logs.

Key concepts: Async streaming, IP address parsing, BTreeMap for sorted statistics, regex

View details →

3. Robot Assembly MPSC

Multi-threaded robot assembly simulation using producer-consumer pattern with channels.

Key concepts: Crossbeam channels, fan-in pattern, graceful shutdown, atomic state management

View details →

4. Shell Protocol (TCP & UDP)

Remote file system operations with both TCP and UDP implementations.

Key concepts: TCP vs UDP protocols, client-server architecture, streaming vs chunked file transfers, session management, binary serialization

View details →

Getting Started

Prerequisites

You'll need Rust installed on your system. If you don't have Rust installed yet, follow the instructions below.

Installing Rust

macOS/Linux

  1. Open a terminal and run:

    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
  2. Follow the on-screen instructions (typically just press Enter to accept defaults)

  3. Restart your terminal or run:

    source $HOME/.cargo/env
  4. Verify the installation:

    rustc --version
    cargo --version

Windows

  1. Download and run rustup-init.exe

  2. Follow the on-screen instructions

  3. Restart your terminal

  4. Verify the installation:

    rustc --version
    cargo --version

Running the Challenges

Each challenge is a standalone Rust crate. Navigate to the respective directory and follow the instructions in its README.

Requirements

  • Rust 2024 edition or later
  • Cargo package manager (installed automatically with Rust)

About

Rust multi-threading playground

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages