Servidor web de alto rendimiento, proxy inverso, balanceador de carga, API gateway y caché de contenido escrito en C.
alibaba/tengine
Servidor web y proxy inverso de alto rendimiento, creado en Taobao y 100 % compatible con nginx, con soporte para HTTP/3, Kubernetes Ingress y SM2/TLCP.
- Estrellas
- 13,417
- Forks
- 2,508
- Issues abiertos
- 510
- Último commit
- hace 2 meses
¿Qué es?
Tengine es un servidor web y proxy inverso basado en nginx y mantenido por el equipo de Tengine, que nació en Taobao. Mantiene la compatibilidad total con nginx y añade funciones pensadas para gestionar tráfico de producción a gran escala, como comprobaciones activas del estado de los upstreams, configuración dinámica sin tiempo de inactividad y más métodos de balanceo de carga, como hashing consistente y persistencia de sesión.
Además de la base de nginx, Tengine admite HTTP/3 (QUIC v1 y draft-29) mediante xquic y NTLS/TLCP con los algoritmos chinos SM2/SM3/SM4 a través de Tongsuo. La integración con Kubernetes Ingress se ofrece mediante el controlador independiente tengine-ingress, que permite cambiar rutas y upstreams sin recargar los procesos worker. También incluye scripting con Lua, proxy de reenvío basado en CONNECT y compresión Zstandard.
Tengine se distribuye como código fuente, imágenes de contenedor (Debian y Alpine) y paquetes rpm, deb y apk para las distribuciones Linux más comunes. Los paquetes se instalan junto con nginx de la distribución sin generar conflictos.
Funciones clave
- 01Totalmente compatible con nginx; hereda sus funciones y configuración.
- 02Compatibilidad con HTTP/3 (QUIC v1 y draft-29) mediante xquic.
- 03NTLS/TLCP con algoritmos SM2/SM3/SM4 a través de Tongsuo.
- 04Configuración dinámica de servidores, ubicaciones y upstreams sin recargas, mediante tengine-ingress para Kubernetes.
- 05Comprobaciones activas del estado de los servidores upstream.
- 06Compatibilidad con scripting en Lua y con el método CONNECT para proxy de reenvío.
Casos de uso
- Sustituir o ampliar nginx como proxy inverso de borde en producción.
- Servir tráfico HTTP/3 en redes inestables.
- Ejecutar un controlador Ingress en Kubernetes con enrutamiento dinámico.
- Implementar servicios que requieran los estándares nacionales de criptografía SM2/TLCP.
Inicio rápido
- 1
Descarga la imagen del contenedor de Tengine
docker pull ghcr.io/alibaba/tengine:latest - 2
Ejecuta el contenedor y asigna el puerto 8080 al puerto 80 del servidor
docker run --rm -p 8080:80 ghcr.io/alibaba/tengine:latest
Antes de usarlo
- Una compilación normal con ./configure no incluye Tongsuo (NTLS), xquic (HTTP/3) ni Lua; para incluirlos se necesitan los scripts auxiliares de empaquetado.
- Al actualizar desde la versión 3.1.0 o una anterior se usan rutas de instalación distintas, por lo que el binario antiguo de nginx puede seguir ejecutándose después de make install.
Temas
Preguntas frecuentes
- ¿Qué es tengine?
- Servidor web y proxy inverso de alto rendimiento, creado en Taobao y 100 % compatible con nginx, con soporte para HTTP/3, Kubernetes Ingress y SM2/TLCP. Tengine es un servidor web y proxy inverso basado en nginx y mantenido por el equipo de Tengine, que nació en Taobao. Mantiene la compatibilidad total con nginx y añade funciones pensadas para gestionar tráfico de producción a gran escala, como comprobaciones activas del estado de los upstreams, configuración dinámica sin tiempo de inactividad y más métodos de balanceo de carga, como hashing consistente y persistencia de sesión.
- ¿tengine es gratuito? ¿Qué licencia tiene?
- tengine es open source bajo la licencia BSD-2-Clause. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿tengine sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de tengine fue el 7 sept 2026.
- ¿Para qué puedo usar tengine?
- Sustituir o ampliar nginx como proxy inverso de borde en producción. Servir tráfico HTTP/3 en redes inestables. Ejecutar un controlador Ingress en Kubernetes con enrutamiento dinámico. Implementar servicios que requieran los estándares nacionales de criptografía SM2/TLCP.
- ¿Cómo se instala tengine?
- Descarga la imagen del contenedor de Tengine: docker pull ghcr.io/alibaba/tengine:latest Ejecuta el contenedor y asigna el puerto 8080 al puerto 80 del servidor: docker run --rm -p 8080:80 ghcr.io/alibaba/tengine:latest
- ¿Dónde consigo tengine?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/alibaba/tengine
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Caddy es un servidor web extensible escrito en Go que sirve HTTP/1.1, HTTP/2 y HTTP/3, y habilita HTTPS automáticamente de forma predeterminada.
Gateway de API dinámico y de alto rendimiento basado en NGINX y etcd, con plugins para enrutamiento, autenticación, limitación de tasa y tráfico de IA/LLM.
Servidor web en Rust con una configuración compacta, TLS automático y trazas por solicitud vinculadas a los registros, para sitios estáticos y proxies inversos.
HAProxy es un proxy inverso y balanceador de carga gratuito y rápido para aplicaciones TCP y HTTP, que ofrece alta disponibilidad y distribuye el tráfico.
Fork de nginx-proxy-manager con una interfaz web para configurar nginx como proxy inverso; incorpora HTTP/3, CrowdSec, TLS reforzado y mTLS, y se distribuye como imagen de Docker.