当前位置 : 主页 > 编程语言 > java >

Nginx与LUA(4)

来源:互联网 收集:自由互联 发布时间:2023-02-04
您好,我是湘王,这是我的51CTO博客,欢迎您来,欢迎您再来~ ​ Nginx既然可以限制流量,那能不能「扩展」流量呢?当然可以,但可能不是你想象的那种「扩展」,更准确地来说是复

您好,我是湘王,这是我的51CTO博客,欢迎您来,欢迎您再来~


Nginx既然可以限制流量,那能不能「扩展」流量呢?当然可以,但可能不是你想象的那种「扩展」,更准确地来说是复制,或者说「拉分支」。

这是因为,有时候为了确保开发出来的应用能够立即应用到生产环境,需要将生产环境的数据和流量拷贝到开发环境,这样做的好处显而易见:

1、可以验证功能是否正常,以及服务的性能;

2、用真实有效的流量请求去验证,又不用造数据,不影响线上正常访问;

3、可以用来排查线上问题,同时,这也是一种测试方式;

4、可以理解为给流量「拉分支」。

Nginx与LUA(4)_流量拷贝

修改Nginx的配置:

user root

worker_processes 1

events {

worker_connections 1024

}

http {

include mime.types

default_type application/octet-stream

sendfile on

keepalive_timeout 65

upstream test {

server 172.16.185.130:8080

server 172.16.185.131:8080

}

# 增加对8080端口的监听

server {

    listen 8080;

    access_log /home/work/logs/nginx/8080.log;

}

# 增加对9090端口的监听

server {

    listen 9090;

    access_log /home/work/logs/nginx/9090.log;

}

server {

    listen       80;

    server_name  localhost;

    location / {

        mirror /mirror1; # 指定镜像uri为/mirror1

        mirror /mirror2; # 指定镜像uri为/mirror2

        proxy_pass http://test;

    }

    location = /mirror1 {

        proxy_pass http://127.0.0.1:8080; # 指定mirror1的url地址

    }

    location = /mirror2 {

        proxy_pass http://127.0.0.1:9090; # 指定mirror2的url地址

    }

}

}

停止并重新启动Nginx服务:

cd /usr/local/nginx/sbin

./nginx -s stop

./nginx

在远程终端中执行tail命令,查看端口的日志输出

tail -f /home/work/logs/nginx/8080.log

tail -f /home/work/logs/nginx/9090.log

在浏览器中访问:

http://IP/test?username=test1

可以据此观察服务器端口日志输出的变化。


感谢您的大驾光临!咨询技术、产品、运营和管理相关问题,请关注后留言。欢迎骚扰,不胜荣幸~

上一篇:Spring Cloud中Hystrix的请求合并
下一篇:没有了
网友评论