如果您想知道 Nginx 是什么,那么这篇简短的文章肯定会消除您对这个主题的疑虑。所以Nginx是一款专为互联网服务器开发的开源软件,专为HTTP浏览而发布。
如今,它还可以用作 HTTP 负载平衡器、反向代理以及 POP 3、IMAP 和 SMTP 协议的电子邮件代理。
该软件于 2004 年 10 月推出,该软件的创建者是 Igor Sysoev。他于 2002 年开始创建该项目,试图解决一个名为 C10K 的问题。您最大和主要的挑战是管理 10,000 个并发连接(同时)。
知道目前有更多的连接,并且服务器可以顺利管理它。正是出于这个简单的原因,它为其用户提供了出色的异步架构,这使其成为当今最可靠的服务器类型之一。无论是在规模、性能还是速度方面。
由于 Nginx 可以轻松支持多个非常高速的连接,因此 Netflix、Google、Adobe、WordPress 等绝大多数高流量网站都已经在使用它。
怎么运行的?
既然你知道 Nginx 是什么,我们就不能不提到它是如何工作的,但在我们进入这个话题之前,你首先需要知道互联网服务器在实践中是如何运作的。
服务器是这样工作的,每当有人浏览网页时,无论是在社交网络上,还是在搜索引擎上做研究,当他找到他想要的东西并决定点击链接时。他最终提出了一个请求。
因此,当请求加载互联网上的页面时,浏览器将联系网站服务器。然后服务器将搜索请求的文件并将它们简单地传递给浏览器。
如果您不知道,传统的 Web 服务器会为每个请求创建一个单独的线程,但要知道 Nginx 不会那样工作。
正如我们前面提到的,它具有出色的性能,同时也是异步的、面向事件的架构。这意味着相似的线程由一个名为 worker 的进程管理。反过来,每个工作进程都有更小的单元,称为工作连接。
因此,整个单元完全负责处理所有加法器请求,因为工作连接仅将请求发送到工作进程,然后再发送到主进程。最后,主进程显示请求的结果。
在某种程度上,这甚至可能看起来很简单,但要知道单个工作连接能够处理多达 1,024 个请求。而也正是因为这个原因,Nginx服务器完全有能力处理百万级的请求而不会出现丝毫问题。这也是流量大的网站使用这项技术的另一大原因。
阿帕奇与 Nginx:
在几乎所有的 Web 服务器中,Apache 是其中最受欢迎的,它实际上也是 Nginx 服务器的主要对手。 Apache 诞生于 90 年代,在全球也拥有庞大的用户群。
但是,如果您要创建一个在线项目,并且您仍然不确定在您的项目中使用哪种类型和最好的服务器,请查看我们对两者的快速比较,如下所示:
性能与性能:
两台服务器的速度相同,但 Nginx 可以轻松地同时运行 1,000 个静态内容连接,这比 Apache 快 2 倍。而且仍然使用更少的内存。在这种情况下,Nginx 服务器无疑是最佳选择。
操作系统兼容性:
兼容性绝不是选择服务器时应考虑的细节之一。在这种情况下,两者都可以在许多操作系统上运行,而这些操作系统又支持 UNIX 系统。
但遗憾的是在这方面Nginx类型的服务器在Windows上的表现和性能不如在其他平台上。
支持:
无论您是初学者还是高级用户,都无一例外地需要互联网上的一个地方或社区,以便在出现意外问题时互相帮助。
两者都通过电子邮件提供支持,并且在 Stack Overflow 上还有一个论坛。不幸的是,Apache 在来自公司本身(即 Apache 基金会)的支持方面还有很多不足之处。
结论:
如您所见,Ngnix 是一个互联网服务器,也可以用作反向代理、负载均衡器和邮件代理。他们所有软件的结构都是异步的,并且都是事件驱动的。这反过来又会启用大量并发请求。
绝对不能不提一下,Nginx 类型的服务器是高度可扩展的,这意味着你的工作随着流量的增加而增长。
Apache 和 Ngnix 无疑都是当今最好的 Web 服务器,现在剩下的就是让您选择要在您的在线项目中使用哪一个。你的选择成功了吗?