Repolode
alibaba

alibaba/tengine

A high-performance web server and reverse proxy originated at Taobao, 100% compatible with nginx, adding HTTP/3, Kubernetes Ingress and SM2/TLCP support.

Stars
13,422
Forks
2,508
Open issues
510
Last commit
2 months ago

What is it?

Tengine is a web server and reverse proxy built on nginx and maintained by the Tengine team, which originated at Taobao. It keeps full nginx compatibility while adding features aimed at large-scale production traffic, such as active upstream health checks, zero-downtime dynamic configuration, and more load balancing methods including consistent hashing and session persistence.

Beyond the nginx base, Tengine supports HTTP/3 (QUIC v1 and draft-29) through xquic, and NTLS/TLCP with Chinese SM2/SM3/SM4 algorithms via Tongsuo. Kubernetes Ingress integration is provided through the separate tengine-ingress controller, which allows routes and upstreams to be changed without reloading worker processes. Lua scripting, CONNECT-based forward proxying and Zstandard compression are also included.

Tengine is distributed as source, container images (Debian and Alpine) and rpm, deb and apk packages for common Linux distributions. Packages install alongside a distribution nginx without conflict.

Key features

  • 01Fully compatible with nginx, inheriting its features and configuration.
  • 02HTTP/3 support (QUIC v1 and draft-29) via xquic.
  • 03NTLS/TLCP with SM2/SM3/SM4 algorithms through Tongsuo.
  • 04Dynamic configuration of servers, locations and upstreams without reloading, via tengine-ingress for Kubernetes.
  • 05Active health checks for upstream servers.
  • 06Lua scripting support and CONNECT method for forward proxying.

Use cases

  • Replacing or extending nginx as an edge reverse proxy in production.
  • Serving HTTP/3 traffic on unstable networks.
  • Running an Ingress controller in Kubernetes with dynamic routing.
  • Deploying services that require SM2/TLCP national cryptography standards.

Quick start

  1. 1

    Pull the Tengine container image

    docker pull ghcr.io/alibaba/tengine:latest
  2. 2

    Run the container and map port 8080 to the server's port 80

    docker run --rm -p 8080:80 ghcr.io/alibaba/tengine:latest

Things to know

  • A plain ./configure build omits Tongsuo (NTLS), xquic (HTTP/3) and Lua, which need the packaging helper scripts to include.
  • Upgrading from 3.1.0 or earlier uses different install paths, so the old nginx binary can keep running after make install.

Topics

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

FAQ

What is tengine?
A high-performance web server and reverse proxy originated at Taobao, 100% compatible with nginx, adding HTTP/3, Kubernetes Ingress and SM2/TLCP support. Tengine is a web server and reverse proxy built on nginx and maintained by the Tengine team, which originated at Taobao. It keeps full nginx compatibility while adding features aimed at large-scale production traffic, such as active upstream health checks, zero-downtime dynamic configuration, and more load balancing methods including consistent hashing and session persistence.
Is tengine free to use? What license does it have?
tengine is open source under the BSD-2-Clause license. Check the license terms before using it in commercial products.
Is tengine still maintained?
Updated within 6 months. The last commit to tengine was on Sep 7, 2026.
What can I use tengine for?
Replacing or extending nginx as an edge reverse proxy in production. Serving HTTP/3 traffic on unstable networks. Running an Ingress controller in Kubernetes with dynamic routing. Deploying services that require SM2/TLCP national cryptography standards.
How do I install tengine?
Pull the Tengine container image: docker pull ghcr.io/alibaba/tengine:latest Run the container and map port 8080 to the server's port 80: docker run --rm -p 8080:80 ghcr.io/alibaba/tengine:latest
Where can I get tengine?
The source code and installation instructions are on GitHub: https://github.com/alibaba/tengine

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects