Nginx的几种应用场景

简介

Nginx是一款轻量级web服务器、反向代理服务器、电子邮件代理服务器等。它有着占内存极少,并发能力强的优点,国内不少大站如百度、网易、腾讯都在使用nginx,来往下看能做哪些应用场景吧。

 

应用场景

配置文件结构

Nginx配置文件整理分为三个部分:全局块、events块、http块,下面看下conf/nginx.conf文件吧

全局块

和Nginx运行相关的全局配置

ab2f3b8a9f4f35453bf487a57398b109

events块

和网络连接相关的配置

b47dff468ca3247d1972948b19b48a5e

http块

缓存、日志记录、虚拟主机配置、代理都在这里

http全局块

3a4ca6ad21e72471026bfbb260687401

server块:server全局块、location块

b97e3356a719a31d8299fe60e2e7effc

 

场景一:负载均衡

应用集群:将同一应用部署到多台机器,组成应用集群,接收负载均衡器分发的请求,进行业务处理并返回响应数据

 

负载均衡器:将用户请求根据对应的负载均衡算法分发到应用集群中的一台服务器进行处理

upstream webservers{   #upstream 指令可以定义一组服务器
    server 127.0.0.1:8080 weight=90 ;
	server 127.0.0.1:8088 weight=10 ;
}
 
server {
 
    listen       8088;
    server_name  localhost;
 
    location / {
        proxy_pass   http://webservers/admin/;
    }
}

 

场景二:代理

又分为正向代理和反向代理。 正向代理是一个位于客户端和原始服务器之间的服务器。为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。正向代理一般是在客户端设置代理服务器,通过代理服务器转发请求,最终访问到目标服务器。

 

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源,反向代理服务器负责将请求转发给目标服务器。用户不需要知道目标服务器的地址,也无须在用户端作任何设定。

 

场景三:部署静态

Nginx 可作为静态 web 服务器来部署静态资源。相比于 Tomcat,Nginx 处理静态资源的能力更加高效,所以在生产环境下,一般会将静态资源部署到 Nginx 中。步骤简单,只需将文件复制到 Nginx 安装目录下的 html 目录中即可。

server {
    listen       8088;  #监听端口
    server_name  localhost;  #服务器名称
 
    location / {  #匹配客户端请求url
        root   html;   #指定静态资源根目录
        index  index.html index.htm;   #指定默认首页
    }
}
阅读剩余
THE END