一、Nginx概述Nginx(简称“enginex”)是一个高性能的HTTP和反向代理服务器,特点是内存少、高并发、高负载,根据测试,有报告称它最多可以支持50,000个并发连接。2.Nginx应用场景2.1、Nginx作为web服务器Nginx可以作为静态页面的web服务器,也支持CGI协议的动态语言,如perl、php等,但不支持java2.2、Nginx作为正向代理服务器Agent:也就是传说中的代理,他的工作原理就像跳板一样。简单来说,我是一个用户,我无法访问某个网站,但是我可以访问代理服务器。这个代理服务器呢,他可以访问我不能访问的网站,所以我先连接代理服务器,告诉他我需要不能访问的网站的内容,代理服务器检索出来,然后返回大部头书。从网站的角度来看,代理服务器抓取内容时只有一条记录。结论是正向代理是位于客户端和源服务器之间的服务器。客户端为了从源服务器获取内容,向代理发送请求并指定目标(源服务器),然后代理向原服务器转发请求,并将获取到的内容返回给客户端。客户端必须进行一些特殊设置才能使用正向代理。2.3、Nginx作为反向代理服务器反向代理,对于客户端来说就像是原来的服务器,客户端不需要做任何特殊的设置,我们只需要将请求发送到反向代理服务器,反向代理服务器选择目标服务器获取数据,然后返回给客户端。此时反向代理服务器和目标服务器对外是同一台服务器,暴露代理服务器地址,隐藏真实服务器IP地址。2.4.Nginx作为负载均衡服务器客户端,向服务器发送多个请求。服务器处理请求,其中一些请求可能需要与数据库交互。服务器完成处理后,将结果返回给客户端。这种架构模型比较适合比较简单,并发请求比较少的早期系统,成本也比较低。但是随着信息量的不断增长,访问量和数据量的快速增长,系统业务复杂度的增加,这种架构会导致服务端对应的客户端请求越来越慢。当并发量特别大的时候,很容易直接导致服务器Crash。很明显这是服务器性能瓶颈造成的,那么如何解决这种情况呢?我们首先想到的可能是升级服务器的配置,比如提高CPU的执行频率,增加内存等来提高机器的物理性能来解决这个问题,但是我们知道摩尔定律越来越无效,硬件的性能提升已经不能满足日益增长的需求。最明显的例子就是天猫双十一那天,某款热销商品的瞬时访问量非常大,所以类似上面的系统架构,不可能把机器增加到现有的top-水平物理配置。满足需求。那我们该怎么办呢?在上面的分析中,我们去掉了增加服务器物理配置来解决问题的方法,也就是说纵向的解决问题已经行不通了,那么横向增加服务器的数量呢?这时,集群的概念应运而生。服务器无法解决。我们增加服务器的数量,然后将请求分发到每个服务器。我们不是将原始请求集中在单个服务器上,而是将请求分散到多个服务器上,将负载分散到不同的服务器上。我们所说的负载均衡2.5、Nginx作为静态资源访问服务器将静态html页面、css样式、js脚本、图片等静态资源放在服务器上,然后使用Nginx作为静态资源访问服务器,访问地址在外部。3.总结本文主要告诉大家Nginx是什么,Nginx能做什么,也就是具体的应用场景。希望这篇文章能让你对Nginx有一个初步的了解。下一篇将从Nginx的安装和使用开始。
