- Framework web en Rust enfocado en ergonomía y modularidad
- Desarrollo de APIs RESTful y servicios web con alta performance
- Combina componentes del ecosistema Tokio (Hyper, Tower) con una API intuitiva
- Runtime asíncrono para Rust que permite operaciones concurrentes sin bloqueo
- Función clave: Ejecuta tareas asíncronas eficientemente utilizando un modelo de programación basado en
async/await
- Caso de uso: Operaciones intensivas de E/S (APIs, bases de datos, sistemas de archivos)
- Alternativas:
async-std: API similar a la biblioteca estándar pero asíncrona
smol: Runtime más ligero con menor sobrecarga
- Implementación HTTP/1.1 y HTTP/2 de bajo nivel para Rust
- Función clave: Parseo y serialización eficiente del protocolo HTTP
- Caso de uso: Base para construir clientes o servidores HTTP personalizados
- Alternativas:
reqwest: Cliente HTTP de alto nivel (construido sobre Hyper)
tiny_http: Para servidores HTTP simples y síncronos
actix-web: Framework completo con su propio motor HTTP
- Biblioteca para construir servicios de red componibles
- Función clave: Define la abstracción
Service para procesar solicitudes y producir respuestas
- Caso de uso: Crear middleware reutilizable y componible para aplicaciones de red
- Concepto central: Servicios que se pueden componer en capas (middleware pattern)
- Implementaciones específicas de Tower para aplicaciones HTTP
- Función clave: Proporciona middleware común para aplicaciones web (compresión, CORS, autenticación)
- Caso de uso: Extender funcionalidad HTTP sin reimplementar componentes comunes
- Tokio (base): Proporciona asincronía y gestión de tareas
- Hyper (sobre Tokio): Implementa el protocolo HTTP
- Tower (independiente): Define abstracciones para servicios
- Tower HTTP (combina Tower y Hyper): Middleware HTTP específico
- Axum (nivel superior): Unifica todo con una API ergonómica para desarrolladores