828华为云征文|基于华为云Flexus X实例搭建Nginx集群负载均衡

2024-09-07 23:20

本文主要是介绍828华为云征文|基于华为云Flexus X实例搭建Nginx集群负载均衡,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

前言

一、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实例的这次特惠活动绝对不容错过。赶快把握机会,让业务更上一层楼!

这篇关于828华为云征文|基于华为云Flexus X实例搭建Nginx集群负载均衡的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1146453

相关文章

springboot security验证码的登录实例

《springbootsecurity验证码的登录实例》:本文主要介绍springbootsecurity验证码的登录实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录前言代码示例引入依赖定义验证码生成器定义获取验证码及认证接口测试获取验证码登录总结前言在spring

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

如何自定义Nginx JSON日志格式配置

《如何自定义NginxJSON日志格式配置》Nginx作为最流行的Web服务器之一,其灵活的日志配置能力允许我们根据需求定制日志格式,本文将详细介绍如何配置Nginx以JSON格式记录访问日志,这种... 目录前言为什么选择jsON格式日志?配置步骤详解1. 安装Nginx服务2. 自定义JSON日志格式各

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

SpringCloud负载均衡spring-cloud-starter-loadbalancer解读

《SpringCloud负载均衡spring-cloud-starter-loadbalancer解读》:本文主要介绍SpringCloud负载均衡spring-cloud-starter-loa... 目录简述主要特点使用负载均衡算法1. 轮询负载均衡策略(Round Robin)2. 随机负载均衡策略(

Spring 中使用反射创建 Bean 实例的几种方式

《Spring中使用反射创建Bean实例的几种方式》文章介绍了在Spring框架中如何使用反射来创建Bean实例,包括使用Class.newInstance()、Constructor.newI... 目录1. 使用 Class.newInstance() (仅限无参构造函数):2. 使用 Construc

Nginx配置location+rewrite实现隐性域名配置

《Nginx配置location+rewrite实现隐性域名配置》本文主要介绍了Nginx配置location+rewrite实现隐性域名配置,包括基于根目录、条件和反向代理+rewrite配置的隐性... 目录1、配置基于根目录的隐性域名(就是nginx反向代理)2、配置基于条件的隐性域名2.1、基于条件

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4