Giter VIP home page Giter VIP logo

williamren / tengine Goto Github PK

View Code? Open in Web Editor NEW

This project forked from alibaba/tengine

0.0 2.0 0.0 28.22 MB

A distribution of Nginx with some advanced features

Home Page: http://tengine.taobao.org/

License: BSD 2-Clause "Simplified" License

Ruby 3.94% C++ 0.33% Shell 0.25% Perl 30.72% Python 0.03% Vim Script 0.35% D 0.04% Makefile 0.04% C 63.64% Objective-C 0.05% Assembly 0.01% Lua 0.60%

tengine's Introduction

Introduction

Tengine is a web server originated by Taobao, the largest e-commerce website in Asia. It is based on the Nginx HTTP server and has many advanced features. Tengine has proven to be very stable and efficient on some of the top 100 websites in the world, including taobao.com and tmall.com.

Tengine has been an open source project since December 2011. It is being actively developed by the Tengine team, whose core members are from Taobao, Sogou and other Internet companies. Tengine is a community effort and everyone is encouraged to get involved.

Features

  • All features of nginx-1.4.4 are inherited, i.e., it is 100% compatible with nginx.
  • Dynamic module loading support. You don't need to recompile Tengine when adding new modules to it.
  • SPDY v3 support, and SPDY/HTTP servers can listen on the same port.
  • Sends unbuffered upload directly to HTTP and FastCGI backend servers, which saves disk I/Os.
  • More load balancing methods, e.g., consistent hashing, and session persistence.
  • Input body filter support. It's quite handy to write Web Application Firewalls using this mechanism.
  • Dynamic scripting language (Lua) support, which is very efficient and makes it easy to extend core functionalities.
  • Logging enhancements. Syslog (local and remote), pipe logging, and log sampling are supported.
  • Limits retries for upstream servers (proxy, memcached, fastcgi, scgi, uwsgi).
  • Includes a mechanism to support standalone processes.
  • Protects the server in case system load or memory use goes too high.
  • Multiple CSS or JavaScript requests can be combined into one request to reduce download time.
  • Removes unnecessary white spaces and comments to reduce the size of a page.
  • Proactive health checks of upstream servers can be performed.
  • The number of worker processes and CPU affinities can be set automatically.
  • The limit_req module is enhanced with whitelist support and more conditions are allowed in a single location.
  • Enhanced diagnostic information makes it easier to troubleshoot errors.
  • More user-friendly command lines, e.g., showing all compiled-in modules and supported directives.
  • Expiration times can be specified for certain MIME types.
  • Error pages can be reset to 'default'.
  • ...

Installation

Tengine can be downloaded at http://tengine.taobao.org/download/tengine.tar.gz. You can also checkout the latest source code from GitHub at https://github.com/alibaba/tengine

To install Tengine, just follow these three steps:

$ ./configure
$ make
# make install

By default, it will be installed to /usr/local/nginx. You can use the '--prefix' option to specify the root directory. If you want to know all the 'configure' options, you should run './configure --help' for help.

Documentation

The homepage of Tengine is at http://tengine.taobao.org/ You can access http://tengine.taobao.org/documentation.html for more information.

Mailing lists

Mailing lists are usually good places to ask questions. We highly recommend you subscribe to Tengine's mailing lists below:

tengine's People

Contributors

yaoweibin avatar zhuzhaoyuan avatar monadbobo avatar chobits avatar yzprofile avatar dinic avatar taoyuanyuan avatar jinglong avatar zhcn381 avatar flygoast avatar lifeibo-duplicate avatar infohunter avatar lilbedwin avatar supertcy avatar sarahwang avatar lax avatar fanjizhao avatar skoowoo avatar chaoslawful avatar red54 avatar higkoo avatar wangbin579 avatar lhmwzy avatar magicbear avatar jasonlfunk avatar cpaneljamyn avatar jlund avatar zls0424 avatar gringus avatar szepeviktor avatar

Watchers

william avatar James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.