Nginx粗浅配置

 

1、nginx简介

Nginx (engine x) 是一个高性能的HTTP反向代理服务,也是一个IMAP/POP3/SMTP服务Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

特点:反向代理、负载均衡、动静分离(nginx存放的静态的资源)

1.1正向代理

    访问网站,需要我们用户手动设置代理服务器的ip地址和端口,对于目标服务器来说看到的是代理服务器的

1.2反向代理:

     是服务器的代理集,或者是服务器集群的保镖,用户不需要设置,

 

1.3负载均衡

        就是将数据流量分摊到多个服务器上执行,将每台服务器的压力,多台服务器共同完成工作任务,从而提高了数据吞吐量。

 

1.4动静分离

就是当用户访问静态资源时,只需要访问到nginx服务器就行,不在继续访问集群服务器的其他的服务器了

2.Nginx服务器安装

因为我学习的知识与实际的服务器环境不同所以上网上找到了“centos7 nginx安装与配置实现负载均衡”一篇博文,进行nginx安装

以为这个玩意依赖的东西太多,我也不太想一个一个装

2.1安装步骤一

wget http://dl.Fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

 

2.2安装步骤二

rpm -ivh epel-release-latest-7.noarch.rpm

 

2.3安装步骤三 

yum install nginx

(这个就比较多了,截图比较费劲)下图安装好的之后自动提示安装好的依赖

 

2.4一些操作的命令

$ systemctl enable nginx (加入开机启动)
$ systemctl start nginx (开启nginx)
$ systemctl status nginx (查看状态)

默认访问端口为本机ip+80端口(此时此刻算是访问成功)

 

3.Nginx的负载均衡设置

跟别人讨论之后我知道了关于这个Nginx怎么设置的负载均衡的,就是相当于所有用户的请求都发送到Nginx服务器上,Nginx做统一调度,可以根据相关配置或者规则约束进行资源定位分配,不说了上去就是干!

首先我们需要修改配置文件

        首先需要书写下列命令,进入文件配置

 

大部分东西是死配置亦或者是我暂时了解的不够深层次,只能根据自己的需求配置一些简单的,首先当我们用户发出请求的时候,

server {

        listen       80; 默认监听80端口

        listen       47.106.xx.xx;(这是我云服务的公网ip)

        server_name  _;

        root         /usr/share/nginx/html;

        # Load configuration files for the default server block.

        include /etc/nginx/default.d/*.conf;

Nginx负责监听的80端口就会监听到请求传给location

location / {  / 表示所有请求,可以自定义来针对不同的域名设定不同负载规则和服务

        proxy_pass    http://47.106.xx.xx; 反向代理,填上你自己的负载均衡规则名

必须要配

        proxy_redirect off;

        proxy_set_header Host $host;

        proxy_set_header X-Real-IP $remote_addr;

        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_connect_timeout 90;

        proxy_send_timeout 90;

        proxy_read_timeout 90;

 

        }

此时location中就会调用proxy_pass 所对应的反向代理(名称为47.106.64.172的规则)

下面是设置的规则

upstream 47.106.64.172 { 47.106..xx.xx就是反向代理的规则名

        server 47.106.xx.xx:8080 weight=1;根据权重进行分配,这里是相同的

        server 47.100.xx.xx:8080 weight=1;

    }

修改完成后:nginx -s reload保存一下不用重启nginx服务器

效果刷新同一个公网ip直接跳转到配置规则中的两个ip

当然我们可以在一个服务器里面模拟配置,装1---n台tomcat服务器,在每台服务器下放上war包,对每台服务器的server.xml文件进行配置,分别设置不同的端口,防止互相的端口占用,造成错误。

posted @ 2019-04-23 08:48  Kill(Bug)  阅读(71)  评论(0)    收藏  举报