什么是NGINX?
NGINX是一款开源软件,可用于Web服务、反向代理、缓存、负载均衡、媒体流传输等。它最初是一款注重高性能和稳定性的Web服务器。除了提供HTTP服务器功能外,NGINX还可用作电子邮件(IMAP、POP3和SMTP)代理服务器,以及HTTP、TCP和UDP服务器的反向代理和负载均衡器。
背景
Igor Sysoev最初编写NGINX是为了解决C10K问题。该术语于1999年提出,用于描述当时的Web服务器难以处理大量(10K)并发连接(C)的问题。凭借事件驱动的异步架构,NGINX革新了服务器在高性能场景下的运行方式,并成为当时速度领先的Web服务器。
2004 年将该项目开源后,其使用量呈指数级增长。随后,Sysoev 联合创立了 NGINX, Inc.,以支持 NGINX 的持续开发,并将NGINX Plus作为一款具备更多功能、面向企业客户的商业产品推向市场。2019 年,NGINX, Inc. 成为F5, Inc.的一部分。如今,NGINX 和 NGINX Plus 可处理数十万并发连接,并为众多互联网繁忙网站提供支持,应用范围超过其他服务器。
作为Web服务器的NGINX
NGINX的初衷是打造速度出众的Web服务器,而保持这一优势至今仍是该项目的核心目标。在衡量Web服务器性能的基准测试中,NGINX始终优于Apache及其他服务器。不过,自NGINX首次发布以来,网站已从简单的HTML页面发展为动态的多元化内容。NGINX也随之不断发展,如今已支持现代Web的所有组成部分,包括WebSocket、HTTP/2、gRPC,以及多种视频格式(HDS、HLS、RTMP等)的流式传输。
NGINX:不止于Web服务
尽管NGINX凭借出色的Web服务器速度而广为人知,但其可扩展的底层架构也非常适合内容服务之外的多种Web任务。NGINX能够处理大量连接,因此常被用作反向代理和负载均衡器,以管理传入流量,并将其分发到处理速度较慢的上游服务器,包括传统数据库服务器和微服务。
NGINX也经常部署在客户端与另一台Web服务器之间,充当SSL/TLS终结器或Web加速器。作为中间层,NGINX可高效处理可能拖慢Web服务器的任务,例如协商SSL/TLS,或压缩和缓存内容以提升性能。使用Node.js、PHP等技术构建的动态网站通常会将NGINX部署为内容缓存和反向代理,以减轻应用服务器的负载,并充分利用底层硬件。
NGINX和NGINX Plus能为您做什么?
NGINX Plus和NGINX是出色的Web服务器和应用交付解决方案,广泛应用于Dropbox、Netflix和Zynga等高流量网站。全球超过3.5亿个网站依靠NGINX Plus和NGINX Open Source快速、可靠且安全地交付内容。
- NGINX是一款专为云原生架构设计的纯软件一体化负载均衡器、Web服务器、API网关和反向代理,可帮助加快IT基础设施和应用现代化进程。NGINX Plus提供企业级功能,带来强大的可靠性和安全性。
- NGINX是一款多功能工具。借助NGINX,可以使用同一款工具实现负载均衡器、反向代理、内容缓存和Web服务器功能,从而减少组织需要维护的工具和配置。NGINX提供文档以及丰富的电子书、网络研讨会和视频,帮助您快速上手。NGINX Plus还提供快速响应的客户支持,便于您获得帮助,诊断技术栈中使用NGINX或NGINX Plus的任何部分。
- NGINX不断演进。过去十年来,NGINX始终走在现代Web发展前沿,并在从HTTP/2到微服务支持等各个方面推动行业发展。随着Web应用开发和交付不断演进,NGINX Plus持续增加新功能,助力实现顺畅的应用交付,包括支持使用专为NGINX定制的JavaScript实现进行配置,以及支持动态模块。使用NGINX Plus,可帮助您持续提升Web性能。
如需了解NGINX One与NGINX Open Source之间的主要区别,请查看详细的对比表。

