nginx反向代理、负载均衡、静态资源

一、安装

apt update

apt install nginx

安装后:

二进制文件目录:/usr/sbin/nginx

主配置文件目录:/etc/nginx/nginx.conf

二、命令

启动:nginx

停止:nginx -s stop

优雅退出:nginx -s quit

重新加载配置文件:nginx -s reload

除此之外:还可以对master或worker 进程发送信号,来达到更多样的控制:

https://nginx.org/en/docs/control.html

三、反向代理

  1. 在8001和8002分别启动一个web服务器

go run user.go

go run server.go

  1. 修改nginx配置文件,添加一个server块

通过访问http://www.pxf.com/userhttp://www.pxf.com/file 就能将请求分别转发到8001 和 8002服务器上。

  1. nginx -s reload

  1. 修改windows hosts文件,路径:C:\Windows\System32\drivers\etc\hosts,添加nginx所在服务器ip地址与域名www.pxf.com 的映射。

  1. 现象:

到此反向代理演示完成。

四、负载均衡

  1. 基本配置

  1. 在8001和8002启动路由相同服务

  1. 修改nginx配置文件,添加upstream块,并添加8001 8002服务的地址;添加server块,

使用端口81代理两个服务。

  1. nginx -s reload

  1. 现象,访问相同的URL,nginx会将请求均衡的分发到两个服务器。

第一次访问www.pxf.com:81/file

第二次访问www.pxf.com:81/file

2.负载均衡算法

  1. 轮询(默认)

说明:nginx 假定所有服务器性能都相同,会将请求平均分配到所有服务器。

upstream myservers {
    server  127.0.0.1:8001;
    server  127.0.0.1:8002;
}

b.加权轮询

说明:是轮询的扩充,权重越大,服务器承受的请求越多。

upstream myservers {
    server  127.0.0.1:8001 weight=1;
    server  127.0.0.1:8002 weight=3;
}

c. ip_hash

说明:根据客户端ip进行hash,如果在服务器上存有session,需要使用这种方式。

upstream myservers {
    ip_hash;
    server  127.0.0.1:8001;
    server  127.0.0.1:8002;
}

d. least_conn;

说明:如果一些请求很耗时,那么nginx会将新的请求发送到不是很繁忙的服务器上。

upstream myservers {
    least_conn;
    server  127.0.0.1:8001;
    server  127.0.0.1:8002;
}

到此,负载均衡介绍完毕

五、动静分离

1.创建文件夹/data/html 、 /data/images

2.更改nginx配置文件

server {
        listen 82;
        server_name www.pxf.com;
        location / {
                root /data/html;
        }
        location /images {
                root /data;
        }
        location /x {
                alias /data/images;
        }
}

3.现象

访问网页 http://www.pxf.com/index.html

访问图片http://www.pxf.com/images/1.pnghttp://www.pxf.com:82/x/1.png

4.root与alias区别

location /x {
    alias /data/images;
}

location /images {
    root /data;
}

root 将URL添加到root 下,如请求为:/images/a/b 则真实资源地址为:/data/images/a/b

alias 顾名思义就是别名而已,如请求为:/x/a/b 则真实资源地址为:/data/images/a/b

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值