Nginx 是什么

了解 Nginx 的诞生背景、特点和主要用途

问题

Nginx 是什么?它和 Apache 有什么区别?

解答

Nginx 的诞生

Nginx 是一种 WEB 服务器,和 Apache 一样基于 REST 架构风格,通过 HTTP 协议提供网络服务。

Apache 作为世界第一大服务器,有稳定、开源、跨平台等优点。但它诞生于互联网早期,被设计为重量级服务器,不支持高并发。当运行数万计的并发访问时,会导致:

  • 服务器消耗大量内存
  • 进程/线程切换消耗大量 CPU 资源
  • HTTP 请求平均响应速度降低

为了解决高并发问题,俄罗斯工程师 Igor Sysoev 使用 C 语言开发了 Nginx,并将其开源。Nginx 是一款轻量级高并发服务器。

Nginx 的用途

Nginx 是一款自由、开源、高性能的 HTTP 服务器和反向代理服务器,同时也是 IMAP、POP3、SMTP 代理服务器。

主要应用场景:

HTTP 服务器:用于网站的发布和处理

反向代理服务器:实现负载均衡,将请求分发到多个后端服务器

关键点

  • Nginx 是轻量级高并发 WEB 服务器,解决了 Apache 在高并发场景下的性能问题
  • 使用 C 语言开发,开源免费
  • 可作为 HTTP 服务器直接处理静态资源
  • 可作为反向代理服务器实现负载均衡
  • 支持 IMAP、POP3、SMTP 等邮件协议代理