Springboot 多实例负载均衡部署

这篇具有很好参考价值的文章主要介绍了Springboot 多实例负载均衡部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Springboot 多实例负载均衡部署

一、测试代码:

  1. 控制层测试代码:

    import java.net.Inet4Address;
    import java.net.InetAddress;
    import java.net.UnknownHostException;
    
    @Controller
    @RequestMapping("/test")
    public class TestController {
    
        @GetMapping("")
        @ResponseBody
        public String test() {
            InetAddress localHost = null;
            try {
                // 返回服务器地址
                localHost = Inet4Address.getLocalHost();
                return localHost.getHostAddress();
            } catch (UnknownHostException e) {
                return "未知ip";
            }
        }
    }
    
    

    本地方法测试:

Springboot 多实例负载均衡部署

  1. maven打好jar包,命名test.jar

二、单机多容器(docker + nginx)

  1. 打好的包放在一台linux服务器上: /opt/springboot/test.jar

  2. 新建dockerFile文件,也放在同一个目录下: /opt/springboot/dockerfile

    FROM openjdk:8-jdk-alpine
    
    MAINTAINER lzf
    COPY *.jar /jar/test.jar
    
    # 正常服务启动
    CMD ["java", "-Xms200m", "-Xmx200m", "-jar","/jar/test.jar"]
    
  3. 在服务器上部署两个springboot容器。

    • 切换到 /opt/springboot/ 目录下,制作docker镜像 docker build -t test .

    • # 部署的时候指定network,可以方便用容器名互相访问
      docker network create my_network
      
      # 我的nginx是用docker部署的,也是在my_network下
      docker run -d --name test_1 --network my_network test
      docker run -d --name test_2 --network my_network test
      
  4. 配置nginx负载均衡

    配置nginx.conf文件:

        server {
            listen 80;
            location / {
                proxy_pass http://balance;
            }
        }
    
        upstream balance{  
        	# weight 代表权重,可以不设置。注意:想要禁用这个server,不能设置为0,会报错,可以设置为backup: server 172.19.0.3:8080 backup;
            server 172.19.0.3:8080 weight=1;
            server 172.19.0.4:8080 weight=5;
        
        	# 如果nginx和test_1和test_2都是在同一个network下,就能使用容器名进行访问
        	#server test_1:8080;
            #server test_2:8080;
        }
    
    #  用以下命令可以查看容器的ip
    #  docker inspect test_1 | grep IPAddress
    #  docker inspect test_2 | grep IPAddress
    
    

    改nginx配置记得重新加载: nginx -s reload

  5. 效果:
    Springboot 多实例负载均衡部署
    Springboot 多实例负载均衡部署文章来源地址https://www.toymoban.com/news/detail-421841.html

到了这里,关于Springboot 多实例负载均衡部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 简单认识nginx+Tomcat多实例部署实现动静分离和负载均衡

    1、在安装好jdk环境后,添加两例Tomcat服务 2.添加tomcat环境变量 3.修改 tomcat1 中的 server.xml 文件,要求各 tomcat 实例配置不能有重复的端口号 (1) (2) (3) 4.修改两个 tomcat 实例中的 startup.sh 和 shutdown.sh 文件,添加 tomcat 环境变量 (1) (2) 5.启动两例 tomcat 运行各自的

    2024年02月12日
    浏览(34)
  • Tomcat多实例部署及nginx+tomcat的负载均衡和动静分离

    静:静态页面   动: 动态页面 分别可以对静态页面和动态页面发起不同的请求,会有不同的响应结果。 ngix反向代理——负均均衡——tomcat为后端服务器——web静态nginx——静态请求nginx——动态页面——tomcat Nginx实现负载均衡的原理 Nginx实现负载均衡是通过反向代理实现Ngi

    2024年02月13日
    浏览(47)
  • 云耀服务器L实例搭配负载均衡部署Linux 可视化宝塔面板

    华为云云耀服务器L实例是一种高性能、高可靠性的云服务器实例,适用于大规模企业级应用、大数据分析等场景。它基于华为最新一代的硬件虚拟化技术,提供了更高的计算、存储和网络性能,同时保障了数据安全和隐私保护。 云耀云服务器L实例官网:https://www.huaweicloud.co

    2024年01月21日
    浏览(56)
  • Tomcat服务部署、优化及多实例实验(Nginx+Tomcat负载均衡、动静分离)

    目录 1 Tomcat 1.1 tomcat 构成 1.2 什么是 servlet? 1.3 什么是 JSP? 1.4 Tomcat 功能组件结构 1.5 Container 结构分析 1.6 Tomcat 请求过程 2 Tomcat 服务部署 2.1 环境部署 2.1.1 ​编辑 2.1.2 设置JDK环境变量 2.2 安装启动Tomcat 2.3 优化tomcat启动速度 2.4 主要目录说明 3 Tomcat 虚拟主机配置 3.1 创建 c

    2024年02月09日
    浏览(41)
  • 基于grpc-java开发的普通工程在k8s内部署多实例,如何实现客户端流量的负载均衡

    本文主要讨论通过grpc-java开发的普通的java grpc工程,以多实例的方式部署在容器编排平台kubernetes(以下简称k8s)上,如何能够实现让同样部署在k8s 集群内的客户端请求流量均衡的分发到多个grpc应用部署实例上去。 grpc服务端程序在k8s内部署的多个实例通过headless service暴露服

    2024年01月17日
    浏览(47)
  • Nginx负载均衡配置实例

    介绍: 增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的 情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负 载均衡 客户端发送多个请求到服务器,服务器处理请求,有一些可能要与数据库进行交互

    2024年02月15日
    浏览(47)
  • nginx配置实例-负载均衡

    目录 一、目的:实现效果 二、准备工作 三、实验部署 3.1修改第二台Tomcat服务器的监听端口为8081 3.2修改完成后,重新启动tomcat8081这台服务器。 3.3在浏览器测试 3.4在两台tomcat里面webapps目录中,创建名称是edu的文件夹,在edu文件夹中创建页面,用于测试。 3.5修改nginx配置文件

    2024年04月12日
    浏览(72)
  • Nginx配置负载均衡实例

    Nginx配置反向代理实例二 提醒一下:下面实例讲解是在Mac系统演示的; 负载均衡实例实现的效果 浏览器地址栏输入地址http://192.168.0.101/test/a.html,刷新页面进行多次请求,负载均衡效果,平均分配到8080端口服务和8081端口服务 第一步:准备两个Tomcat服务器,一个端口为8080,

    2024年01月16日
    浏览(42)
  • 5、Nginx 配置实例-负载均衡

    【尚硅谷】尚硅谷Nginx教程由浅入深 志不强者智不达;言不信者行不果。 负载均衡:增加服务器的数量,将请求分发到各个服务器上,将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,这就是负载均衡。 浏览器地址栏输入

    2024年02月09日
    浏览(43)
  • Tomcat多实例与负载均衡

    在部署tomct之前必须安装好jdk,以为jdk是tomcat运行的必要环境 关闭防火墙 将安装tomcat所需软件包传到/opt目录下 安装jdk 查看java版本 切换至/opt下,解压tomcat包 新建文件夹/usr/local/tomcat 件解后的包拷贝至/usr/local下并重命名 修改tomcat1的/usr/local/tomcat/tomcat1/bin/startup.sh 修改tomca

    2024年02月09日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包