whatisgithub

What is tengine?

alibaba/tengine — explained in plain English

Analysis updated 2026-06-24

13,253CAudience · ops devopsComplexity · 4/5LicenseSetup · hard

In one sentence

Tengine is a web server created by Alibaba's Taobao that extends Nginx with live config reloads, HTTP/3, Lua scripting, and smarter health checks, while staying fully compatible with standard Nginx setups.

Mindmap

mindmap
  root((tengine))
    Built on
      Nginx compatible
      Same config syntax
    Key additions
      Live config reload
      HTTP/3 and QUIC
      Lua scripting
      Proactive health checks
    Traffic routing
      Header-based routing
      Cookie-based routing
      Dynamic upstreams
    Performance
      Asset bundling
      Load protection
    Origin
      Taobao team
      Alibaba scale
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Replace Nginx on a high-traffic server to get live routing-rule updates without any downtime or restarts

USE CASE 2

Enable HTTP/3 and QUIC on a web server to reduce latency for mobile users on unreliable networks

USE CASE 3

Add Lua scripts to a web server to handle custom routing or request-transformation logic without recompiling

USE CASE 4

Set up proactive health checks on backend servers so traffic automatically stops flowing to unhealthy instances

What is it built with?

CNginxLuaHTTP/3QUIC

How does it compare?

alibaba/tenginejonas/tigsoftethervpn/softethervpn
Stars13,25313,22713,226
LanguageCCC
Setup difficultyhardeasyhard
Complexity4/52/54/5
Audienceops devopsdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Must be compiled from source using the standard configure, make, and install steps, same process as building Nginx.

BSD 2-Clause license: use freely for any purpose including commercial, as long as you keep the copyright notice and don't use the project name to endorse your own products.

So what is it?

Tengine is a web server created by Taobao, Alibaba's e-commerce platform, and has been running at the core of some of the largest websites in the world, including taobao.com and tmall.com. It is built on top of Nginx, the widely used open-source web server, and is fully compatible with it. Anything that works with standard Nginx will work with Tengine, but Tengine adds a substantial set of extra capabilities on top. One of the main additions is the ability to change server configuration without restarting. In standard Nginx, updating settings like routing rules or upstream server addresses requires reloading the server process. Tengine, through a companion project called tengine-ingress, lets you update these dynamically while the server keeps running. This includes routing traffic based on specific HTTP headers, cookies, or query parameters, adjusting timeouts, and enabling or disabling features on a per-server basis. Tengine also supports HTTP/3, the newest version of the web's core protocol, which uses a faster connection method called QUIC. This is particularly useful for low-latency connections on unreliable networks. Additional features include better monitoring tools, Lua scripting for extending server behavior, proactive health checks on backend servers, automatic resource protection when the system is under load, and the ability to combine multiple CSS or JavaScript files into a single download to speed up page loads. Installing Tengine follows the same steps as building Nginx from source: configure, make, and install. The project is open source under the BSD-2-Clause license and has been maintained as a community project since 2011.

Copy-paste prompts

Prompt 1
Show me how to configure Tengine to route traffic to different backend servers based on a specific HTTP header value, without restarting the server
Prompt 2
Enable HTTP/3 and QUIC on a Tengine server and verify it's working with a browser dev tools check
Prompt 3
Write a Lua script for Tengine that blocks requests missing a required Authorization header and returns a 401 response
Prompt 4
Configure Tengine to combine multiple JavaScript files into a single download to speed up page load times
Prompt 5
Set up proactive health checks in Tengine so unhealthy upstream servers are removed from the pool automatically

Frequently asked questions

What is tengine?

Tengine is a web server created by Alibaba's Taobao that extends Nginx with live config reloads, HTTP/3, Lua scripting, and smarter health checks, while staying fully compatible with standard Nginx setups.

What language is tengine written in?

Mainly C. The stack also includes C, Nginx, Lua.

What license does tengine use?

BSD 2-Clause license: use freely for any purpose including commercial, as long as you keep the copyright notice and don't use the project name to endorse your own products.

How hard is tengine to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is tengine for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.