nginx
|
|
This article's lead section may not adequately summarize its contents. Please consider expanding the lead to provide an accessible overview of the article's key points. (January 2011) |
|
|
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. (January 2011) |
| Original author(s) | Igor Sysoev |
|---|---|
| Developer(s) | Nginx, Inc. |
| Initial release | October 4, 2004 |
| Stable release | 1.0.12 (6 February 2012) [±] |
| Preview release | 1.1.15 (15 February 2012) [±] |
| Development status | Active |
| Written in | C[1] |
| Operating system | Cross-platform[2] |
| Type | Web server, reverse/mail proxy server |
| License | 2-clause BSD-like[3] |
| Website | www.nginx.org |
nginx (pronounced “engine-x”) is an open source Web server and a reverse proxy server for HTTP, SMTP, POP3 and IMAP protocols, with a strong focus on high concurrency, performance and low memory usage. It is licensed under a BSD-like license and it runs on Unix, Linux, BSD variants, Mac OS X, Solaris, AIX and Microsoft Windows.[4]
Contents |
[edit] Overview
Nginx quickly delivers static content with efficient use of system resources. It can deploy dynamic HTTP content on a network using FastCGI, SCGI handlers for scripts, uWSGI application servers or Phusion Passenger module, and can serve as a very capable software load balancer.[5]
Nginx uses an asynchronous event-driven approach to handling requests which provides more predictable performance under load, in contrast to the Apache HTTP server model that uses a threaded or process-oriented approach to handling requests.[6]
[edit] Usage
Originally, nginx was developed to fill the needs of various websites run by Rambler, for which it was serving 500 million requests per day as of September 2008.[7]
According to Netcraft's January 2012 Web Server Survey,[8] nginx was found to be the third most widely used web server across all domains (9.63% of surveyed sites) and the second most widely used web server for all “active” sites (12.18% of surveyed sites). According to W3Techs it is used by 10.1% of the top 1 million websites, and by 23.9% of the top 1,000 websites.[9] According to BuiltWith, it is used on 11.88% of the top 10 000 websites, and its growth within the top 10k, 100k and 1 million segments is increasing.[10]
Wikipedia uses nginx as its SSL termination proxy.[11]
[edit] Performance
Nginx has been shown to perform better than Apache at handling a high number of concurrent connections[12] [13] while using less resources[14].
[edit] Basic HTTP features
- Ability to handle more than 10000 simultaneous connections with a low memory footprint (~2.5Mb per 10k inactive HTTP keep-alive connections)
- Handling of static files, index files, and auto-indexing
- Reverse proxy with caching
- Load balancing
- Fault tolerance
- SSL with SNI support
- FastCGI, SCGI, uwsgi support with caching
- Name- and IP-based virtual servers
- FLV streaming
- MP4 streaming, using the contrib MP4 Streaming Lite module (not updated since 2008) or since version 1.1.3 using the built-in MP4 Streaming Module
- Web page access authentication
- gzip compression
- URL rewriting
- Custom logging
- Response rate and concurrent requests limiting
- Server Side Includes
- IP-based geolocation
- WebDAV
[edit] Mail proxy features
[edit] Other features
- Upgrading executable and configuration on the fly (without client connections loss) [15]
[edit] See also
[edit] References
- ^ "Nginx - Ohloh". ohloh.net. http://www.ohloh.net/p/nginx/analyses/latest. Retrieved 8 February 2012.
- ^ "About Nginx". http://www.nginx.org/en/. Retrieved 8 February 2012.
- ^ "Licensing". http://www.nginx.org/LICENSE. Retrieved 2011-09-16.
- ^ "nginx.org". http://www.nginx.org/en/. Retrieved 2011-10-15.
- ^ Use Nginx for Proxy Services and Software Load Balancing, May 11th, 2010, by Sam Kleinman, Linode Library
- ^ Basic Nginx Configuration by Sam Kleinman; August 21, 2010.
- ^ Nginx: the High-Performance Web Server and Reverse Proxy. Linux Journal. 2008-09-01. http://www.linuxjournal.com/article/10108. Retrieved 2009-08-16.
- ^ "January 2012 Web Server Survey". 2012-01-03. http://news.netcraft.com/archives/2012/01/03/january-2012-web-server-survey.html. Retrieved 2011-01-03.
- ^ "Usage of web servers broken down by ranking". 2012-01-03. http://w3techs.com/technologies/cross/web_server/ranking. Retrieved 2012-01-03.
- ^ "Statistics behind the nginx success story". 2011-11-07. http://trends.builtwith.com/Web-Server/nginx. Retrieved 2011-11-12.
- ^ "Wikitech: HTTPS". Wikitech.wikimedia.org. 2011-10-03. http://wikitech.wikimedia.org/view/Https#SSL_termination. Retrieved 2011-12-03.
- ^ "A little holiday present: 10,000 reqs/sec with Nginx!". Webfaction. http://blog.webfaction.com/a-little-holiday-present. Retrieved 8 February 2012.
- ^ Pace, Christopher. "Apache vs. Nginx Web Server Performance". http://remote-linux-support.com. http://remote-linux-support.com/blog/2011/02/apache-vs-nginx-web-server-performance/. Retrieved 8 February 2012.
- ^ Reese, Will. "Nginx: the High-Performance Web Server and Reverse Proxy". LinuxJournal. http://www.linuxjournal.com/article/10108. Retrieved 8 February 2012.
- ^ "Official documentation: Controlling nginx". Nginx.org. http://nginx.org/en/docs/control.html. Retrieved 2011-12-03.