Nginx初识

来源:互联网 发布:淘宝金牌客服沟通技巧 编辑:程序博客网 时间:2024/05/21 07:49

Where

    网页开发中,我们使用的是B/S架构,即浏览器/服务器模式,客户端浏览器发送请求到服务器中。但是我们都知道,国外的网站是被禁的,我们不能访问。于是出现了代理服务器。


What

    代理服务器:一般是指局域网内部的机器通过代理服务器发送请求到互联网上的服务器,代理服务器一般作用在客户端。也就是说在浏览器和服务器中间加一个代理服务器,对于客户端来说,代理器扮演的是服务器的角色,用于接收请求(request),返回回应(response)。对于服务器来说,代理器扮演的是客户端的角色,发送request,返回response。

    代理分为正向代理和反向代理、正向代理:

    正向代理是一个位于客户端和原始服务器(originserver)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。

    反向代理指从服务器接收收来自客户端的request,再把请求分配给具体的服务器进行处理,接着再将服务器相应结构返回到客户端。

    Nginx就是一种代理服务器,而且是代理服务器中的反向代理服务器。

   


Why

    使用Nginx这种反向代理服务器,用户一直认为他是在和服务器进行交互,而并不知道其实是代理服务器,而原始服务器所设置的防火墙只允许代理服务器访问和输出,所以,防火墙和反向代理共同保护了原始服务器。

    同时,Nginx拥有许多优良的特性,例如跨平台、配置简单、事件驱动等,深入的话还得继续研究。

    还有一点,负载均衡,怎么说呢?以前所以客户端去访问一个或某几个服务器,有的服务器访问数量就打,有的就少。有了反向代理,均匀分配,实现同等的负载,提高性能和效率。


How

   

    由上图可知,Nginx有一个master进程,底下又有多个worker进程,这些worker进程是平等的,当master进程发出连接时,这些worker都竞争accept新的连接。最后,仅有某一个进程Accept这个连接,然后进行处理,之后就结束啦!