Repolode
alibaba

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. 1

    Descarga la imagen del contenedor de Tengine

    docker pull ghcr.io/alibaba/tengine:latest
  2. 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

#web-server#reverse-proxy#nginx#http3#load-balancer#tls#kubernetes-ingress#forward-proxy#health-check#lua

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