Expand description
async fn serve(&self, Input) -> Result<Output, Error>
Crate used by the end-user rama crate and rama crate authors alike.
Learn more about rama:
- Github: https://github.com/plabayo/rama
- Book: https://ramaproxy.org/book/
§rama service
Heavily inspired by tower-service and the vast Tokio ecosystem which makes use of it.
Initially the goal was to rely on tower-service directly, but it turned out to be
too restrictive and difficult to work with, for the use cases we have in Rama.
See https://ramaproxy.org/book/faq.html for more information regarding this and more.
Re-exports§
pub use service::BlockingService;pub use service::Service;pub use layer::Layer;pub use svc_input::ServiceInput;std
Modules§
- bytes
- Re-export of bytes crate.
- combinators
- Combinators for working with or in function of services.
- conversion
- error
- Error utilities for Rama and its users.
- error_
sink - A reusable sink for errors that occur in fire-and-forget contexts.
- extensions
- Extensions passed to and between services
- futures
- Re-export of the futures and asynk-strim crates.
- geo
- Geographic identity types shared across rama.
- graceful
std - Shutdown management for graceful shutdown of async-first applications.
- io
std - layer
- Layer type and utilities.
- matcher
- Matcher utilities for any middleware where need to match on incoming inputs.
- rt
std - Runtime utilities used by Rama.
- service
- Service type and utilities.
- stream
std - svc_
input std - telemetry
- Rama telemetry modules.
- username
- Utilities to work with usernames and pull information out of it.
Traits§
- Fork
- Create a structurally isolated logical child of a value.