aquatic_ws (WebTorrent tracker) rewritten with glommio, achieves up to 1.6 million responses a second in load tests

This page summarizes the projects mentioned and recommended in the original post on /r/rust

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • aquatic

    High-performance open BitTorrent tracker (UDP, HTTP, WebTorrent)

    I've rewritten aquatic_ws, my WebTorrent tracker implementation, to utilise glommio, a Rust thread-per-core async runtime using io_uring. I did a fresh round of load test benchmarks to get an idea of performance relative to other implementations.

  • webtorrent

    ⚡️ Streaming torrent client for the web

    I've rewritten aquatic_ws, my WebTorrent tracker implementation, to utilise glommio, a Rust thread-per-core async runtime using io_uring. I did a fresh round of load test benchmarks to get an idea of performance relative to other implementations.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • glommio

    Glommio is a thread-per-core crate that makes writing highly parallel asynchronous applications in a thread-per-core architecture easier for rustaceans.

    I've rewritten aquatic_ws, my WebTorrent tracker implementation, to utilise glommio, a Rust thread-per-core async runtime using io_uring. I did a fresh round of load test benchmarks to get an idea of performance relative to other implementations.

  • wt-tracker

    High-performance WebTorrent tracker

    wt-tracker (nodejs, single-threaded) reached 31 thousand responses a second

  • openwebtorrent-tracker

    Fast and simple Webtorrent tracker implementation in C++

    openwebtorrent-tracker (C++, single-threaded) reached 9 thousand responses a second

  • Ocelot

    https://github.com/WhatCD/Ocelot might be interesting to benchmark against as tracker software that is widely used. I believe it's single-threaded (but async) C. It might not be the simplest to setup though.

  • udp-socket

    Advanced udp socket.

    Have you had a look at https://docs.rs/nix/latest/nix/sys/socket/fn.sendmmsg.html or https://docs.rs/libc/latest/libc/fn.sendmmsg.html? There is also https://github.com/mxinden/udp-socket.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts