Nginx代理服务器的简单使用

1、负载均衡的概念:

web项目开发完成后需要部署在服务器上(tomcat、jetty等),当高并发访问时,服务器会很卡,负载均衡就是添加了好几台服务器来分担这些访问从而减少服务器压力的。

2、负载均衡器的分类

有软件(nginx是绝对的主流)和硬件

3、Nginx的简单介绍和两种主要功能

nginx:反向代理服务器,专门做均衡负载和静态代理的一款开源的c语言写的web服务器,轻量级,能很好的对大量数据进行存储。

负载均衡:nginx本质也是一种服务器,可以看成是其他服务器的一个总代理,请求过来时会根据配置来动态分配请求访问的服务器。

静态代理:tomcat处理大量的图片数据会非常慢,于是用nginx来进行代理,进行动静分离,这样tomcat直接调用nginx上的数据图片就可以了


配置文件简介(conf文件夹下面的nginx.conf文件)

#user nobody;

worker_processes  1;#进程数

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

    worker_connections  1024;#最大连接数

}

http {

    include      mime.types;#引入其他文件

    default_type  application/octet-stream;#默认的数据流,是下载模式

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

    #                  '$status $body_bytes_sent "$http_referer" '

    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;#访问日志

    sendfile        on;

    #tcp_nopush    on;

    #keepalive_timeout  0;

    keepalive_timeout  65;#连接超时时间

    #gzip  on; #开启gzip压缩,输出时对文件进行压缩

    #一个server就是一个虚拟主机,可以同时配置多个虚拟主机,用域名来区分

    server {

        listen      80;

        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {

            root  html;

            index  index.html index.htm;

        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html

        #

        error_page  500 502 503 504  /50x.html;

        location = /50x.html {

            root  html;

        }

    }

}


负载均衡和静态代理配置:

#user nobody;

worker_processes  1;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

    worker_connections  1024;

}

http {

#include vhost/*.conf;#导入其他配置文件

    include      mime.types;

    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

    #                  '$status $body_bytes_sent "$http_referer" '

    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;

    #tcp_nopush    on;

    #keepalive_timeout  0;

    keepalive_timeout  65;

    #gzip  on;

#负载均衡配置

      upstream localhost{

server localhost:8888 weight=1;#优先级

server localhost:8889 weight=1;

      }

    server {

        listen      80;

        server_name  www.xudongjie.com;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {

            #root  html;

          # index  index.html index.htm;

    proxy_set_header  Host              $host;  # required for docker client's sake

            proxy_set_header  X-Real-IP        $remote_addr; # 获取用户的真实IP地址

            proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;

    proxy_pass http://localhost;

        }

        error_page  500 502 503 504  /50x.html;

        location = /50x.html {

            root  html;

        }

    }

  server {

        listen      80;

        server_name  image.xudongjie.com;

root E:/nginx/statictext/;

        charset utf-8;

        #access_log  logs/host.access.log  main;

        location / {

root E:/nginx/statictext/;

index index.html; #可以指定文件名称 index index.html;

        }

        error_page  500 502 503 504  /50x.html;

        location = /50x.html {

            root  html;

        }

    }

}

你可能感兴趣的:(Nginx代理服务器的简单使用)