tower

fn(Request) -> Future

  • 所有者: tower-rs/tower
  • 平台:
  • 许可证: MIT License
  • 分类:
  • 主题:
  • 喜欢:
    0
      比较:

Github星跟踪图

Tower

Tower is a library of modular and reusable components for building robust
networking clients and servers.

Build Status
Gitter

Overview

Tower aims to make it as easy as possible to build robust networking clients and
servers. It is protocol agnostic, but is designed around a request / response
pattern. If your protocol is entirely stream based, Tower may not be a good fit.

Project Layout

Tower consists of a number of components, each of which live in their own sub
crates.

  • tower: The main user facing crate that provides batteries included tower services (docs).

  • tower-service: The foundational traits upon which Tower is built
    (docs).

  • tower-layer: The foundational trait to compose services together
    (docs).

  • tower-balance: A load balancer. Load is balanced across a number of
    services (docs).

  • tower-buffer: A buffering middleware. If the inner service is not ready to
    handle the next request, tower-buffer stores the request in an internal
    queue (docs).

  • tower-discover: Service discovery abstraction (docs).

  • tower-filter: Middleware that conditionally dispatch requests to the inner
    service based on a predicate (docs).

  • tower-limit: Middleware limiting the number of requests that are
    processed (docs).

  • tower-reconnect: Middleware that automatically reconnects the inner
    service when it becomes degraded (docs).

  • tower-retry: Middleware that retries requests based on a given Policy
    (docs).

  • tower-test: Testing utilies (docs).

  • tower-timeout: Middleware that applies a timeout to requests
    (docs).

  • tower-util: Miscellaneous additional utilities for Tower
    (docs).

Status

Currently, only tower-service, the foundational trait, has been released to
crates.io. The rest of the library will be following shortly.

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in Tower by you, shall be licensed as MIT, without any additional
terms or conditions.

主要指标

概览
名称与所有者tower-rs/tower
主编程语言Rust
编程语言Rust (语言数: 1)
平台
许可证MIT License
所有者活动
创建于2017-07-24 23:53:00
推送于2025-07-03 07:53:21
最后一次提交2025-07-03 09:52:53
发布数60
最新版本名称tower-0.5.2 (发布于 )
第一版名称tower-service-0.1.0 (发布于 )
用户参与
星数3.9k
关注者数55
派生数301
提交数596
已启用问题?
问题数220
打开的问题数64
拉请求数520
打开的拉请求数17
关闭的拉请求数72
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?