Nginx

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Nginx
Nginx logo.svg
Original author(s)Igor Sysoev
Developer(s)Nginx, Inc.
Initial release4 October 2004; 14 years ago (2004-10-04)[1]
Stable release1.14.1 (6 November 2018; 4 days ago (2018-11-06)) [±][2]
Preview release1.15.5 (2 October 2018; 39 days ago (2018-10-02)) [±][3]
Repository Edit this at Wikidata
Written inC[4]
Operating systemBSD variants, HP-UX, IBM AIX, Linux, macOS, Solaris, Windows,[5] and other *nix flavors[6]
TypeWeb server, reverse/mail proxy server
License2-clause BSD[7]
Websitenginx.org

Nginx ( /ˌɛnɪnˈɛks/ EN-jin-EKS[8]) (stylized as NGINX, NGiИX or nginx) is a web server which can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache. The software was created by Igor Sysoev and first publicly released in 2004.[9] A company of the same name was founded in 2011 to provide support and Nginx plus paid software.[10]

Nginx is free and open-source software, released under the terms of a BSD-like license. A large fraction of web servers use NGINX,[11] often as a load balancer.[12]

Popularity[edit]

According to Netcraft's November 2016 Web Server Survey,[13] Nginx was found to be the second most widely used web server across all "active" sites (18.22% of surveyed sites) and for the top million busiest sites (27.83% of surveyed sites). According to W3Techs, it was used by 37.7% of the top 1 million websites, 49.7% of the top 100,000 websites, and by 57.0% of the top 10,000 websites.[14] According to BuiltWith, it is used on 38.2% of the top 10,000 websites, and its growth within the top 10k, 100k and 1 million segments increased.[15] A 2018 survey of Docker usage found that Nginx was the most commonly deployed technology in Docker containers.[16] Wikipedia uses Nginx as its SSL termination proxy.[17] As of OpenBSD release 5.2 (1 November 2012), Nginx became part of the OpenBSD base system, providing an alternative to the system's fork of Apache 1.3, which it was intended to replace,[18] but it was later replaced by OpenBSD's own httpd(8).[19]

Features[edit]

Nginx can be deployed to serve dynamic HTTP content on the network using FastCGI, SCGI handlers for scripts, WSGI application servers or Phusion Passenger modules, and it can serve as a software load balancer.[20]

Nginx uses an asynchronous event-driven approach, rather than threads, to handle requests.[21] Nginx's modular event-driven architecture can provide more predictable performance under high loads.[22][23]

Nginx default configuration file is nginx.conf.[24]

HTTP proxy and Web server features[edit]

Mail proxy features[edit]

Other features include upgrading executable and configuration without client connections loss,[30] and a module-based architecture with both core[31] and third-party module support.[32]

The paid Plus product includes additional features such as advanced load balancing and access to an expanded suite of metrics for performance monitoring.[33][34]

Nginx vs Nginx Plus[edit]

There are two versions of Nginx, OSS Nginx and Nginx Plus. Nginx Plus offers additional features not included in OSS Nginx, such as Active health checks, session persistence based on cookies, DNS service discovery integration, Cache Purging API, AppDynamic, Datalog, Dynatrace New Relic plug-ins, Active-Active HA with config sync, Key-Value Store, on-the-fly with zero downtime updates upstream configurations and key‑value stores using Nginx Plus API[35] and web application firewall (WAF) dynamic module.[36]

Performance vs Apache[edit]

Nginx was written with an explicit goal of outperforming the Apache web server.[37] Out of the box, serving static files, Nginx uses dramatically less memory than Apache, and can handle roughly four times more requests per second. On the other hand, it is known to be less stable on Windows-configured systems whereas Apache has full support.[38][39] This performance boost comes at a cost of decreased flexibility, such as the ability to override systemwide access settings on a per-file basis (Apache accomplishes this with an .htaccess file, while Nginx has no such feature built in).[40][41] Formerly, adding third party modules to nginx required recompiling the application from source with the modules statically linked. This was partially overcome in version 1.9.11 on February 2016, with the addition of dynamic module loading.[42] However, the modules still must be compiled at the same time as nginx, and not all modules are compatible with this system—some require the older static linking process.[43]

History[edit]

Nginx, Inc.
Private
IndustryTechnology
Founded2011
HeadquartersSan Francisco, California, U.S.[10]
Key people
Gus Robertson (CEO), Igor Sysoev (CTO)
ProductsNginx Web server, Nginx Amplify SaaS, Nginx Controller, Nginx Unix and Nginx Web Application Firewall
Websitenginx.com

Igor Sysoev began development of Nginx in 2002.[9] Originally, Nginx was developed to solve the C10k problem, and to fill the needs of websites including Rambler search engine and portal, for which it was serving 500 million requests per day by September 2008.[44]

A company of the same name was founded in July 2011 by Sysoev to provide commercial products and support for the software.[45]

The company's principal place of business is San Francisco, California, while legally incorporated in British Virgin Islands.[10]

In October 2011, Nginx raised $3 million from BV Capital, Runa Capital and MSD Capital, Michael Dell's venture fund.[46]

The company announced commercial support options for companies using Nginx in production. Nginx offered commercial support in February 2012,[47][48] and paid Nginx Plus subscription in August 2013.[49]

Support packages focus on installation, configuration, performance improvement, etc.[50] Support includes proactive notifications about major changes, security patches, updates and patches.

WordPress developer Automattic Inc. and content delivery network provider MaxCDN became funding partners for an update to Google's SPDY version 3.1, slated for early 2014.[51]

Nginx also offers consulting services to assist customers in custom configuration or adding additional features.[52]

In October 2013, Nginx raised a $10 million series B investment round led by New Enterprise Associates.[53] That round included previous investors, as well as Aaron Levie, CEO and founder of Box.com.[54][55] In December 2014, Nginx raised a $20 million series B1 round led by New Enterprise Associates, with participation from e.ventures (formerly BV Capital), Runa Capital, Index Ventures and Nginx's own CEO Gus Robertson.[56][57]

In October 2017 Nginx Inc. announced general available Nginx Amplify SaaS providing monitoring and analytics capabilities for Nginx.[58]

In September 2017, Nginx announced an API Management tool, NGINX Controller which would build off of their API Gateway, NGINX Plus.[59][60]

In June 2018 Nginx raised $43 Million in Series C Funding in a round led by Goldman Sachs "to Accelerate Application Modernization and Digital Transformation for Enterprises".[61]

See also[edit]

References[edit]

  1. ^ "CHANGES". Retrieved 16 May 2017.
  2. ^ Dounin, Maxim (6 November 2018). "nginx-1.14.1". nginx-announce (Mailing list). Retrieved 10 November 2018.
  3. ^ "NGINX Changelog". NGINX.
  4. ^ "The NGINX Open Source Project on Ohloh". ohloh.net. Retrieved 7 March 2013.
  5. ^ "nginx for Windows". Retrieved 28 May 2014.
  6. ^ "Tested OS and platforms". Retrieved 15 October 2011.
  7. ^ "Licensing". Retrieved 18 January 2013.
  8. ^ "Igor Sysoev". sysoev.ru. Retrieved 1 June 2018.
  9. ^ a b Tony Mobily (5 January 2012). "Interview with Igor Sysoev, author of Apache's competitor NGINX". Free Software Magazine. Retrieved 18 October 2013.
  10. ^ a b c "Notice of Exempt Offering of Securities". Form D. US Securities and Exchange Commission 17 October 2013. Retrieved 15 September 2016.
  11. ^ "January 2017 Web Server Survey - Netcraft". news.netcraft.com. Retrieved 1 June 2018.
  12. ^ "Use NGINX as a Front-end Proxy and Software Load Balancer". Retrieved 1 June 2018.
  13. ^ "November 2016 Web Server Survey". 22 November 2016. Retrieved 19 December 2016.
  14. ^ "Usage of web servers broken down by ranking". 19 December 2016. Retrieved 19 December 2016.
  15. ^ "Builtwith: nginx Usage Statistics". 19 December 2016. Retrieved 19 December 2016.
  16. ^ "8 surprising facts about real Docker adoption". 13 June 2018. Retrieved 21 June 2018.
  17. ^ "Wikitech: HTTPS". Wikitech.wikimedia.org. 3 October 2011. Retrieved 3 December 2011.
  18. ^ "OpenBSD Upgrade Guide: 5.1 to 5.2". openbsd.org. 6 November 2012.
  19. ^ "Heads Up: Nginx Removed From Base".
  20. ^ "Use NGINX as a Front-end Proxy and Software Load Balancer". Linode Guides & Tutorials. Retrieved 1 June 2018.
  21. ^ "Welcome to NGINX Wiki! - NGINX". nginx.com.
  22. ^ "The Architecture of Open Source Applications (Volume 2): nginx". aosabook.org. Retrieved 10 June 2015.
  23. ^ "How to Configure NGINX". Linode Guides & Tutorials. 8 March 2018.
  24. ^ "Beginner's Guide". nginx.org. Retrieved 1 June 2018.
  25. ^ "Module ngx_http_upstream_module". nginx.org. Retrieved 14 August 2012.
  26. ^ "Proxy: support for connection upgrade (101 Switching Protocols)". trac.nginx.org. 19 February 2013. Retrieved 21 February 2013.
  27. ^ Murenin, Constantine A. (18 February 2013). "A dynamic web-site written wholly in nginx.conf? Introducing mdoc.su!". nginx@nginx.org (Mailing list). Retrieved 24 December 2014.
  28. ^ Murenin, Constantine A. (24 February 2013). "mdoc.su — Short manual page URLs for FreeBSD, OpenBSD, NetBSD and DragonFly BSD". Retrieved 24 December 2014.
  29. ^ "Module ngx_mail_auth_http_module". nginx.org. Retrieved 13 September 2012.
  30. ^ "Official documentation: Controlling nginx". nginx.org. Retrieved 3 December 2011.
  31. ^ "nginx documentation". nginx.org. Retrieved 9 June 2015.
  32. ^ "3rdPartyModules – Nginx Community". wiki.nginx.org. Retrieved 9 June 2015.
  33. ^ "How to monitor NGINX". Datadog. 9 July 2015. Retrieved 9 July 2015.
  34. ^ "Application Load Balancing with NGINX Plus". NGINX. Retrieved 9 July 2015.
  35. ^ "Load balancing with NGINX Plus". Retrieved 1 June 2018.
  36. ^ "NGINX Plus is a software load balancer, web server, and content cache system". Retrieved 1 June 2018.
  37. ^ "NGINX vs. Apache: Our View of a Decade-Old Question". NGINX. 9 October 2015. Retrieved 28 December 2016.
  38. ^ "Choosing Between Apache and NGINX for Your Web Hosting Needs". Hosting Canada.
  39. ^ "Web server performance comparison". DreamHost. Retrieved 28 December 2016.
  40. ^ Jankov, Tonino (13 June 2018). "Apache vs Nginx Performance: Optimization Techniques — SitePoint". SitePoint. Retrieved 22 October 2018.
  41. ^ "Which web server should you use — Apache or NGINX?".
  42. ^ "CHANGES-1.10". nginx.org. 31 January 2017.
  43. ^ "Introducing Dynamic Modules in NGINX 1.9.11 - NGINX". NGINX. 9 February 2016. Retrieved 13 January 2017.
  44. ^ "Nginx: the High-Performance Web Server and Reverse Proxy". Linux Journal. 1 September 2008. Retrieved 16 August 2009.
  45. ^ "Company". nginx.com. 3 January 2012. Retrieved 24 February 2012.
  46. ^ Natasha Starkell (11 October 2011). "Russian Nginx Raises $3 Million From International Investors". Techcrunch. Retrieved 20 November 2014.
  47. ^ Darryl K. Taft (8 February 2012). "NGINX Launches Commercial Support for Open-Source Web Server". e Week. Retrieved 18 October 2013.
  48. ^ Steven J. Vaughan-Nichols (8 February 2012). "Commercial Support now available for the open-source NGINX Web server". ZDNet Open Source blog. Retrieved 18 October 2013.
  49. ^ "Nginx Inc. Launches NGINX Plus". 22 August 2013.
  50. ^ Taft, Darryl K. (8 February 2012). "NGINX Launches Commercial Support for Open-Source Web Server". eweek.com. Retrieved 24 February 2012.
  51. ^ Shankland, Stephen (20 December 2013). "Nginx upgrade funded by fans of Google's SPDY Web protocol". CNET. Retrieved 6 January 2014.
  52. ^ "Commercial Support now available for the open-source NGINX Web server". ZDNet. 8 February 2012. Retrieved 28 February 2012.
  53. ^ Sean Michael Kerner (16 October 2013). "Nginx Raises $10 Million in New Funding for Server Development". e Week. Retrieved 18 October 2013.
  54. ^ Frederic Lardinois (15 October 2013). "Nginx Raises $10M Series B Round Led By NEA". Techcrunch. Retrieved 20 November 2014.
  55. ^ Jolie O'Dell (15 October 2013). "Nginx ties up a sweet $10M funding deal and hundreds of millions of users". Venture Beat. Retrieved 18 October 2013.
  56. ^ Frederic Lardinois (9 December 2014). "Nginx Raises $20M Series B1 Round To Drive International Expansion". Techcrunch. Retrieved 9 December 2014.
  57. ^ Jordan Novet (9 December 2014). "Nginx gets $20M, because an open-source web server is just the beginning". VentureBeat. Retrieved 9 December 2014.
  58. ^ "NGINX Amplify is Generally Available - NGINX". 1 October 2017. Retrieved 4 June 2018.
  59. ^ "NGINX releases its new NGINX Application Platform". SD Times. 6 September 2017. Retrieved 7 November 2018.
  60. ^ "Introducing NGINX API Management: Manage NGINX Plus API Gateways with NGINX Controller - NGINX". NGINX. 9 October 2018. Retrieved 7 November 2018.
  61. ^ "NGINX Raises $43 Million in Series C Funding to Accelerate Application Modernization and Digital Transformation for Enterprises". Retrieved 11 October 2018.

External links[edit]