tower

async fn(Request) -> Result<Response, Error> (by tower-rs)

Tower Alternatives

Similar projects and alternatives to tower

  1. FrameworkBenchmarks

    Source for the TechEmpower Framework Benchmarks project

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. tokio

    219 tower VS tokio

    A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...

  4. hyper

    108 tower VS hyper

    An HTTP library for Rust (by hyperium)

  5. cert-manager

    Automatically provision and manage TLS certificates in Kubernetes

  6. flux2

    107 tower VS flux2

    Open and extensible continuous delivery solution for Kubernetes. Powered by GitOps Toolkit.

  7. istio

    97 tower VS istio

    Connect, secure, control, and observe services.

  8. envoy

    86 tower VS envoy

    Cloud-native high-performance edge/middle/service proxy

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. warp

    66 tower VS warp

    A super-easy, composable, web server framework for warp speeds. (by seanmonstar)

  11. tonic

    49 tower VS tonic

    A native gRPC client & server implementation with async/await support.

  12. black-hat-rust

    Applied offensive security with Rust - https://kerkour.com/black-hat-rust

  13. conduit

    39 tower VS conduit

    Ultralight, security-first service mesh for Kubernetes. Main repo for Linkerd 2.x.

  14. Tide

    30 tower VS Tide

    Fast and friendly HTTP server framework for async Rust

  15. bloom

    28 tower VS bloom

    The simplest way to de-Google your life and business: Inbox, Calendar, Files, Contacts & much more (by skerkour)

  16. bitvec

    17 tower VS bitvec

    A crate for managing memory bit by bit

  17. MoonZoon

    16 tower VS MoonZoon

    Rust Fullstack Framework

  18. h2

    8 tower VS h2

    HTTP 2.0 client & server implementation for Rust.

  19. tower-http

    HTTP specific Tower utilities.

  20. linkerd2-proxy

    A purpose-built proxy for the Linkerd service mesh. Written in Rust.

  21. dropshot

    11 tower VS dropshot

    expose REST APIs from a Rust program

  22. tower-lsp

    8 tower VS tower-lsp

    Language Server Protocol implementation written in Rust

  23. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better tower alternative or higher similarity.

tower discussion

Log in or Post with

tower reviews and mentions

Posts with mentions or reviews of tower. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-06-07.
  • eBPF, sidecars, and the future of the service mesh
    8 projects | dev.to | 7 Jun 2024
    Our choice of Rust as the programming language in 2018 was a calculated risk. Rust offers the best of both worlds: the speed and control of languages like C/C++ and the safety and ease of use of languages with runtime environments like Go. Rust and its network library ecosystem were still relatively young at that time. We invested significantly in underlying libraries like Tokio, Tower, and H2 to build the necessary infrastructure.
  • Collection of trait implementations with associated types (GATs?)
    1 project | /r/rust | 15 Feb 2023
    This question is partially inspired by this PR which is kinda trying to do the same thing.
  • dd-trace-layer - A web application middleware for sending Datadog's trace
    3 projects | /r/rust | 7 Oct 2022
    dd-trace-layer is a middleware for sending Datadog's trace. It's based on Tower and OpenTelemetry Rust.
  • GCP firestore and logging SDK in rust
    3 projects | /r/rust | 6 Oct 2022
    I'm pretty sure that GCP's APIs (unlike AWS, which uses Smithy for very genuinely, very good reason) are defined using Protobuf and can be communicated with over gRPC, which means that you don't need to bind via cxx to GCP's C++ APIs. Take a look at this example using Tonic. If you're to use Tonic, you'll also be able to use Tower's middleware (main crate, http-specific) to implement retries, timeouts, tracing, and all the other things you need to be production-ready.
  • Which Rust web framework to choose in 2022 (with code examples)
    7 projects | dev.to | 27 Sep 2022
    #[derive(Clone)] struct MyMiddleware { inner: S, } impl Service> for MyMiddleware where S: Service, Response = Response> + Clone + Send + 'static, S::Future: Send + 'static, { type Response = S::Response; type Error = S::Error; type Future = BoxFuture<'static, Result>; fn poll_ready(&mut self, cx: &mut Context<'_>) -> Poll> { self.inner.poll_ready(cx) } fn call(&mut self, mut req: Request) -> Self::Future { println!("before"); // best practice is to clone the inner service like this // see https://github.com/tower-rs/tower/issues/547 for details let clone = self.inner.clone(); let mut inner = std::mem::replace(&mut self.inner, clone); Box::pin(async move { let res: Response = inner.call(req).await?; println!("after"); Ok(res) }) } } fn main() { let app = Router::new() .route("/", get(|| async { /* ... */ })) .layer(layer_fn(|inner| MyMiddleware { inner })); }
  • How to schedule and run cron jobs in Rust using apalis
    2 projects | dev.to | 14 Aug 2022
    For this tutorial, we're going to use apalis to run cron jobs in an async context. We will also look at how to decorate our jobs with tower middleware allowing us to unlock features like retries, prometheus, sentry etc
  • Warp or Rocket.rs or Actix Web?
    8 projects | /r/rust | 29 May 2022
    So I have now had a look at Axum and think I will give it a try. In the readme in the repository it says something about tower or tower::Service and tonic, what exactly is that? I do not understand that yet.
  • tower-lsp 0.16.0 — Lightweight framework for building LSP servers
    2 projects | /r/rust | 11 Mar 2022
    Better compatibility with tower ecosystem.
  • ratpack: a simpleton's HTTP framework
    6 projects | /r/rust | 24 Jan 2022
    ratpack is idealized in the simplicity of the sinatra (ruby) framework in its goal, and attempts to be an alternative to other async HTTP frameworks such as tower, warp, axum, and tide.
  • When and how to use traits?
    3 projects | /r/rust | 21 Aug 2021
    i would browse the standard library, tower, nom, or my own bitvec to see layout and trait/record separation. in particular, std::io and std::net may be of use: io::Read and io::Write are pervasive examples of implementing unixy file-descriptor-like behavior in the type system
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 12 May 2025
    InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →

Stats

Basic tower repo stats
15
3,781
6.9
13 days ago

tower-rs/tower is an open source project licensed under MIT License which is an OSI approved license.

The primary programming language of tower is Rust.


Sponsored
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com

Did you know that Rust is
the 5th most popular programming language
based on number of references?