目录

前言

一、Flexus云服务器X介绍

1.1 Flexus云服务器X实例简介

1.2 Flexus X实例购买

1.3 登录服务器

三、Springboot集群服务

3.1 部署9901节点服务

3.2 部署9902节点服务

四、Nginx负载均衡配置

五、集群负载调用测试

5.1 负载调用9901端口

5.2 负载调用9901端口

总结


前言

华为云Flexus X实例凭借其高性能、灵活性和易管理性,成为了众多企业的首选。本文将带领大家深入了解如何在华为云Flexus X实例上部署后端Spring Boot工程的集群服务。通过实际操作,部署并验证9901和9902节点的服务,确保集群的高可用性和负载均衡能力。

一、Flexus云服务器X介绍

1.1 Flexus云服务器X实例简介

Flexus云服务器X是华为云推出的一款高性能、高可用性的云服务器,它采用了最新的处理器技术,支持多种操作系统和应用程序,具备灵活的资源配置和强大的扩展能力。无论是Web应用、数据库服务还是大数据处理,Flexus云服务器X都能为您提供稳定、高效的运行环境。

e9493b1e074c4f04b1649494d43aadae.png

1.2 Flexus X实例购买

本文实践前,开始前需要在华为云官网购买Flexus X实例,可以根据实际需求选择合适的配置,如CPU、内存、存储和网络带宽等。

8b5e99e4e6174443bb2d3f7b33dabbd5.png

购买成功后,再控制台,就可以看到刚刚购买的Flexus X实例服务器,如下已购买4核12g的实例。

6da673ffb8ea4671b37feda06f25f161.png

1.3 登录服务器

重置密码之后,就可以使用刚刚的密码登录到Flexus云服务器X实例,可以使用xShell等SSH客户端工具登录服务器或者选择使用自带的cloudshell。

995421377f2f4713ab56d2a8d8c16064.png

 接下来就可以登录到Flexus云服务器X实例中,进入终端之后,会提示 Welcome to Huawei Cloud Service,说明成功登录。

三、Springboot集群服务

在上一篇文章Flexus X实例部署后端Springboot工程中,已经详细讲解了如何在华为云Flexus X实例上部署后端Spring Boot工程了,然而,那篇文章主要关注的是单实例部署和调用。为了实现高可用性和负载均衡,在实际开发中需要将服务部署到多个实例上,本文就利用Flexus云服务器X实例实例部署验证Springboot集群,以体现Flexus云服务器X实例性能强大。

3.1 部署9901节点服务

在集群服务部署完成后,需要验证9901节点的服务是否正确部署。为此,可以通过直接调用接口来进行测试。

首先,启动9901端口的服务,使用nohup命令,并且指定端口启动,这里需要注意的时候,由于pring Boot应用程序的端口参数应该是--server.port而不是--serverport,可以参考springboot配置文件。

nohup java -jar /mydata/springboot/springboot-activity.jar --server.port=9901 >/mydata/springboot/log/activity.log &

启动成功查看9901工程日志,工程成功监听9901端口

同时也可以使用浏览器请求接口是否能正确访问。 

3.2 部署9902节点服务

接下来,部署9902节点的服务。同样地,启动9902端口的服务:

nohup java -jar /mydata/springboot/springboot-activity.jar --server.port=9902 >/mydata/springboot/log/activity_9902.log &

同样启动成功查看9902工程日志,工程成功监听9902端口

以上说明我们的后端集群部署完成了。

四、Nginx负载均衡配置

关于Flexus云服务器X实例nginx安装配置,可以参考这篇文章:

Flexus X实例部署后端Springboot工程

在已经安装好Nginx的Flexus云服务器X中,需要修改配置文件。默认Nginx的配置文件位于/usr/local/nginx/conf目录下。vi命令进行编辑操作,主要是配置两个上游服务器9902和9901,浏览器只要访问nginx的/api 接口,就会自动转发到对应的上游服务器。完整配置文件如下:

events {
    worker_connections 1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    # 配置上游服务器,负载均衡
    upstream mynginx {
        server 127.0.0.1:9901;
        server 127.0.0.1:9902;
    }

    #gzip  on;

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
        }

        location /api {
           # proxy_pass mynginx;
           proxy_pass http://mynginx/;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}

这样配置后,当浏览器访问Nginx的/api接口时,请求会自动转发到对应的上游服务器。

五、集群负载调用测试

上述已经完成集群部署和nginx负载均衡配置,为了验证最终负载均衡的效果,进行集群负载调用测试。无需指定端口调用,而是通过Nginx请求转发来实现负载均衡,在浏览器请求下面地址。

http://ip/api/red-package/rob?redPackageKey=657ba58d316f48b18479aa221583fe7c&userId=77

5.1 负载调用9901端口

第一次调用服务接口时,通过Nginx转发,发现最终调用的是9901端口的服务,只有9901的日志有输出。

5.2 负载调用9901端口

再次调用服务接口时,这次只有9901端口的日志有输出,说明请求已经切换到了9901端口的服务。

通过以上测试,可以确认已经成功利用Flexus X实例实现了集群Nginx负载均衡调用。这种方式不仅能够减轻单体服务的压力,还能让两个服务轮流休息,从而保证后端服务的稳定运行。

总结

在本文中,主要详细探讨了如何在华为云Flexus X实例上部署后端Spring Boot工程的集群服务。通过分别部署9901和9902节点的服务,并验证它们的正确性,充分展示了华为云Flexus X实例在实现集群高可用性和负载均衡方面的强大能力。

 🎉华为云828 B2B企业节盛大启幕!Flexus X实例限时特惠,错过等一年!🎁

对于那些对算力性能有着极高要求,同时希望自建MySQL、Redis、Ngin下性能更上一层楼的企业和个人,Flexus X实例的这次特惠活动绝对不容错过。赶快把握机会,让业务更上一层楼!

Logo

一起探索未来云端世界的核心,云原生技术专区带您领略创新、高效和可扩展的云计算解决方案,引领您在数字化时代的成功之路。

更多推荐