NGINX,发音类似于“engine-ex”,是一个开源Web服务器,自从它最初作为Web服务器成功以来,现在也被用作反向代理,HTTP缓存和负载均衡器。

一些使用NGINX的知名公司包括Autodesk,Atlassian,Intuit,T-Mobile,GitLab,DuckDuckGo,微软,IBM,Google,Adobe,Salesforce,VMWare,Xerox,LinkedIn,思科,Facebook,Target,Citrix Systems,Twitter,Apple ,英特尔等等。

NGINX最初由Igor Sysoev创建,于2004年10月首次公开发布.Igor最初将该软件设想为C10k问题的答案,这是处理10,000个并发连接的性能问题。

由于其根源在于大规模的性能优化,NGINX在基准测试中通常优于其他流行的Web服务器,特别是在具有静态内容和/或高并发请求的情况下。

NGINX如何工作?

NGINX旨在提供低内存使用率和高并发性。NGINX不是为每个Web请求创建新进程,而是使用异步的事件驱动方法,在单个线程中处理请求。

使用NGINX,一个主进程可以控制多个工作进程。主人维护工人流程,而工人则进行实际处理。因为NGINX是异步的,所以每个请求可以由worker同时执行而不会阻塞其他请求。

NGINX中的一些常见功能包括:

具有缓存的反向代理

IPv6

负载均衡

FastCGI支持缓存

WebSockets

处理静态文件,索引文件和自动索引

TLS/SSL with SNI

NGINX与Apache使用情况统计

Apache是另一种流行的开源Web服务器。根据W3Techs的说法,就原始数据而言,Apache是​​目前最受欢迎的Web服务器,47%的网站都使用已知的Web服务器。

虽然Apache是​​最受欢迎的整体选项,但NGINX实际上是高流量网站中最受欢迎的Web服务器

当您按流量细分使用率时,NGINX

在100,000个最受欢迎的网站中占56.1%

10,000个最受欢迎的网站中的63.2%

1,000个最受欢迎的网站中的57%

事实上,NGINX被一些资源最密集的网站使用,包括Netflix,NASA甚至WordPress.com。

另一方面,Apache的使用方向与站点流量增加时的方向相反:

在100,000个最受欢迎的网站中占27.1%

10,000个最受欢迎的网站中的21.5%

1000个最受欢迎的网站中的16.2%

如果我们从2004年开始看看百度搜索术语,我们可以看到Apache一直在稳步下滑,而NGINX则略有增长。

NGINX与Apache

同样,当你认为NGINX在规模上表现更好时,高流量网站选择NGINX而不是Apache也就不足为奇了。

如何检查您是否正在运行NGINX或Apache

在大多数网站上,您只需检查serverHTTP标头即可查看是否显示NGINX或Apache。您可以通过在Chrome Devtools中启动网络标签来查看HTTP标头。或者您可以在Pingdom等工具中检查标题。

但是,HTTP标头可能并不总是显示底层Web服务器。例如,如果您的WordPress站点位于代理服务(如Cloudflare)后面,则serverHTTP标头将改为说明cloudflare。

相关阅读: Apache 是什么,以及它是如何工作的