初级程序员必知系列之Nginx的负载均衡的实战

197 阅读2分钟

这是我参与 8 月更文挑战的第 4 天,活动详情查看: 8月更文挑战

1.负载均衡是什么?

 百度百科的定义:指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行。
 个人认为就是减轻服务器压力,达到服务高可用目的的一种技术。类似我们通过滴滴叫车,我们一叫车,每次都会有不同的车来接单。

2.通过Nginx实现负载均衡

通过上面的解释,我们大概知道负载均衡的概念了,那么现在让我们通过Nginx来实现服务的负载均衡。

准备环境:

1.Nginx
2.Tomcat
3.Jdk(Tomcat启动需要)

配置步骤:

1.首先启动两个Tomcat,端口号分别为8080,8081。

image.png image.png 在/usr/local/tomcat/webapps/Ming 中加入ming.html文件,文件内容自定,能区分是不同的tomcat即可。 image.png Ps:启动后需要查看是否启动成功

2.cd usr/local/nginx/conf 目录中,vim nginx.conf

添加如下的语句:
    http {
    upstream myserver{
        server 182.254.233.73:8080;
        server 182.254.233.73:8081;
    }
    server {
        listen       80;
        server_name  182.254.233.73;
        location / {
            root   html;
            proxy_pass http://myserver;
            index  index.html index.htm;
        }
       location ~ /edu/ {
            proxy_pass http://localhost:8001;
        }
       location ~ /vod/ {
            proxy_pass http://localhost:8002;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }

3.保存并退出,然后重启nginx

image.png

4.点击刷新按钮,显示不同的内容,负载均衡实现成功

image.png image.png

3.负载均衡总结

在实际操作中遇到不同的问题,其中有不同Tomcat的启动时防火墙的拦截导致访问的失败,以及启动多个Tomcat的,其中一个访问不了的错误等等。在实现Nginx的负载均衡的过程中,配置文件是否写准确也是很重要的,这考验程序员的基本功是否扎实。Nginx的功能不止这一个,还有反向代理以及动静分离,在明天的系列中我会陆续介绍的。