【超级新手】只需阅读本文!即使是新手也能理解的 NGINX 讲解

大家好,我是 Beyond Co., Ltd. 的 Kitada。
在本文中,我将用浅显易懂的方式,结合图表,解释 NGINX,以便即使是初学者也能通过阅读本文理解它!

NGINX是什么?

由俄罗斯软件开发者 Igor Sysoev 开发的开源 (OSS) Web 服务器软件

该服务器于 2004 年首次发布,迅速流行起来,现在已成为世界上最受欢迎的 Web 服务器之一,可与 Apache 相媲美。

网络服务器到底是什么?

网络服务器是一种接收用户请求、处理请求并向用户返回响应的服务器。

当用户浏览网站(例如主页)时,他们使用网络浏览器向网络服务器发送请求。网络服务器随后根据接收到的请求将数据作为响应返回给网络浏览器,从而在客户端屏幕上显示页面。

NGINX 等Web 服务器软件就可以将服务器作为 Web 服务器运行

NGINX 的主要特性

现在我们已经解释了Web服务器,接下来让我们介绍NGINX的特性。
除了Web服务器的基本功能外,NGINX还提供了许多其他特性。

◇ Web 服务器
可以接收 HTTP/HTTPS 请求并返回相应的资源(静态文件,如 HTML、CSS 和 JavaScript)。

◇ 反向代理:
允许您使用其他 Web 服务器作为后端来处理用户请求。

◇ 负载均衡器:
允许您将请求分配到多个 Web 服务器并进行处理。

◇ 缓存服务器:
您可以缓存静态内容以提高交付速度。

NGINX主要用作 Web 服务器,它还可以提取和使用反向代理和负载均衡器等单个功能也很有帮助

NGINX 的优点和缺点

现在您已经了解了 NGINX 是什么以及 Web 服务器是什么,接下来我们将探讨使用 NGINX 作为 Web 服务器的优势和挑战。

NGINX 的优势

NGINX 的主要速度快稳定性好可扩展性强特点是

○ 高速:
NGINX 采用事件驱动架构,这意味着它不会为每个请求创建一个单独的进程。相反,它使用事件循环方法(一个单线程循环,用于处理队列中的事件),从而能够用少量进程处理大量请求。尤其值得一提的是,它能够非常快速地处理静态内容,例如 HTML 和图像,并且根据内容的不同,其网站加载速度甚至可以超过 Apache。

○ 稳定性:
NGINX 采用简洁轻量级的设计。与使用多核线程的 Apache 不同,NGINX 使用单线程,因此内存占用更低。即使存在大量并发连接,内存消耗也不会显著增加,因此运行稳定,不易出现故障。

○ 可扩展性:
NGINX 允许您使用称为模块的扩展来添加各种功能。因此,您可以根据需要对其进行自定义。

NGINX的缺点

接下来,我们将介绍使用 NGINX 时面临的一些挑战。

不擅长处理动态内容,
NGINX 虽然它在静态内容交付方面表现出色,但对于动态内容(例如论坛和社交网络服务)的处理速度不如 Apache。如果您有大量动态内容,则需要将其与擅长处理动态内容的 Apache 结合使用,或者通过将其与 CMS 或应用服务器集成来配置 NGINX,以增强其动态内容处理能力。

△ NGINX 的入门级文档较少
。由于 NGINX 比 Apache 晚出现大约 10 年,因此与 Apache 相比,用日语编写的入门级文档必然较少。所以,当需要扩展 NGINX 的功能时,Apache 的实现方法信息更容易在互联网上找到,从而更容易添加新功能。

因此,通过针对不同用途使用合适的服务器,可以提升服务器性能,例如使用 NGINX 处理大量静态内容和并发连接,而​​使用 Apache 处理少量高负载视频内容。此外,通过设计配置并实现互操作,可以共享优势并克服劣势。

NGINX 的历史与未来

最后,我们将介绍 NGINX 的历史和未来。

如引言所述,NGINX 于 2004 年由俄罗斯开发者 Igor Sisoev(以下简称 Sisoev 先生)发布,是一款免费开源软件。随后,在 2011 年,Sisoev 先生与 Maxim Dunin 和 Andrew Alexeyev 共同创立了 NGINX 公司,提供商业支持。NGINX 的市场份额稳步增长,截至 2024 年 5 月,估计

NGINX 公司于 2019 年被美国服务器公司 F5 Networks 以 6.7 亿美元(约 1000 亿日元)收购,但该公司宣布将继续把 NGINX 作为开源软件维护,即使在收购之后,开发工作也像以前一样继续进行。

然而,2024年2月14日,NGINX Inc.的联合创始人之一杜宁在NGINX邮件列表中宣布,他已离开F5 Networks,并将开发NGINX的一个新分支,名为“freenginx”。根据公告,杜宁与F5 Networks的关系在2022年莫斯科办公室关闭时结束,此后他一直以志愿者的身份参与NGINX的开发。

尽管他未领取薪水似乎并无不妥,但F5 Networks的管理层变动却无视开发者和社区的利益,并干预NGINX的安全策略,导致NGINX的开发完全置于F5 Networks的控制之下,使得Dunin先生无力维护NGINX。据信他宣布启动NGINX的一个新分支——“freenginx”项目,

Freenginx 是 NGINX 的一个分支,freenginx-1.25.4发布了第一个正式版本freenginx-1.26.0 还有

◇ 引用:https://freenginx.org/en/download.html

接下来需要关注的是 freenginx 将如何从 NGINX 中独立发展。

NGINX 概述

NGINX 是一款速度快、稳定性好、可扩展性强的 Web 服务器,适用于各种应用场景!
正确使用可以显著提升 Web 服务器性能,不妨一试。

如果您想了解更多关于 NGINX 的信息,请参考以下官方网站和文档。

◇ NGINX 官方网站:https://nginx.org

◇ NGINX 官方文档:https://nginx.org/en/docs

此外,以下文章对 NGINX 进行了详细的解释,请参阅:
https://beyondjapan.com/blog/2023/11/nginx_history

【内部学习小组资料】NGINX 的发展历程

希望这篇博文能帮助你更好地了解 NGINX。

如果您觉得这篇文章对您有帮助,请点个“赞”!
6
加载中...
6票,平均分:1.00/16
7,279
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

我之前在Beyond公司做兼职,后来被正式聘用。我现在
人力资源部培训科的基础设施工程师。
我讨厌飞虫。