Tengine jest serwerem WWW pochodzącym od Taobao, największy e-commerce w Azji.
Opiera się ona na serwerze HTTP nginx i posiada wiele zaawansowanych funkcji.
Tengine okazał się być bardzo stabilny i skuteczny na niektórych z 100 najlepszych stron internetowych na świecie, w tym Taobao.com i tmall.com.
Tengine jest projektem OpenSource od grudnia 2011.
Jest on aktywnie rozwijany przez grupe Tengine, którego członkowie pochodzą z rdzenia Taobao, Sogou i innych firm internetowych.
Autorzy Tengine – na mieisac marzec 2016 bazuje na nginx 1.8.0 (czyli gałęźi stable) ale wprowadza takie funkcje jak protokół http/2 bez konieczności posiadania serwera www nginx z gałęzi Mainline (co może być sporym plusem, bo galąź mainline nie jest po prostu stabilna 😉 )
Autorzy Tengine dokładaja od siebie juz na starcie moduły (domyślnie w nginx nie wszystkie sa dodane)
Oto lista kilku z nich:
Funckje serwera nginx | Http core module |
DSO module | Dyups module |
HTTP/2 module | Proc module |
Backtrace module | Concat module |
Session sticky module | Consistent hash module |
Variables | User agent module |
Upstream keepalive timeout | Upstream check module |
Lua module | Stub status module |
Footer module | Headers module |
Oraz dołączone przeze mnie:
auth-pam | cache-purge |
dav-ext-module | development-kit |
echo | fancyindex |
upstream fair | substitutions filter module |
VTS | Google PageSpeed |
redis2 | srcache |
Z racji że dołączyłem kilka przydatnych modułów, postanowiłem dokleić do plików źródłowych moja propozycje na konfigurację, więć dołączyłem gotowe pliki konfiguracyjne ( /etc/nginx/ – po instalacji) gdzie sa spredefiniowane regułki do Modułów, konfiguracja itp, wszystko powiązane jest z moimi wpisami dotyczacymi nginx np. tu
Dodatkowo przygotowałem źródła (pod system Debian/Ubuntu i pochodne) który ostatecznie wygeneruje pliki .deb (zgodnie z zasada dla nginx).
Przejdźmy do kompilacji i instalacji:
apt update; apt install dpkg-dev build-essential zlib1g-dev libpcre3 libpcre3-dev unzip curl libcurl4-openssl-dev libossp-uuid-dev nano curl git autotools-dev debhelper dh-systemd libexpat-dev libgd-dev libgeoip-dev libluajit-5.1-dev liblua5.1-0-dev libmhash-dev libpam0g-dev libperl-dev libxslt1-dev po-debconf libssl-dev -y wget http://repo.linuxiarz.pl/tengine-2.2-linuxiarz.pl.tar.gz tar xvf tengine-*.tar.gz rm tengine-*.tar.gz cd tengine* dpkg-buildpackage -b cd .. dpkg -i nginx-common_2-tengine*.deb nginx_2-tengine*.deb nginx-extras_2-tengine*.deb nginx-doc_2-tengine*.deb
I start serwera www:
systemctl start nginx.service
Jeśli nie masz systemd
service nginx start
Efekt:
nginx -v Tengine version: Tengine/2.2.0 (nginx/1.8.0)
Żródła na GitHub: https://github.com/alibaba/tengine
Strona:
Dokumentacja: