SpringCloud搭建Eureka集群

SpringCloud搭建Eureka集群介绍上一篇讲了下如何搭建Eureka服务注册中心,那个是单机版的,本篇介绍下集群版搭建。搭建Eureka集群1.新建模块:cloud-eureka-server7002参考cloud-eureka-server7001新建模块cloud-eureka-server7002。2.修改hosts文件路径:C:\Windows\System32\drivers\etc\hosts,在最后面追加以下内容:#springcloud127.0.0.1eureka7001.com127.0.

大家好,又见面了,我是你们的朋友全栈君。

介绍

上一篇讲了下如何搭建Eureka服务注册中心,那个是单机版的,本篇介绍下集群版搭建。

搭建Eureka集群

1.新建模块:cloud-eureka-server7002

参考cloud-eureka-server7001新建模块cloud-eureka-server7002。

2.修改hosts文件

路径:C:\Windows\System32\drivers\etc\hosts,在最后面追加以下内容:

# spring cloud
127.0.0.1  eureka7001.com
127.0.0.1  eureka7002.com

3.修改yml

  • 修改模块7001的配置
server:
  port: 7001
eureka:
  instance:
    hostname: eureka7001.com #eureka服务端的实例名称
  client:
    register-with-eureka: false     #false表示不向注册中心注册自己。
    fetch-registry: false     #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
    service-url:
      defaultZone: http://eureka7002.com:7002/eureka/
  • 修改模块7002的配置
server:
  port: 7002
eureka:
  instance:
    hostname: eureka7002.com #eureka服务端的实例名称
  client:
    register-with-eureka: false     #false表示不向注册中心注册自己。
    fetch-registry: false     #false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
    service-url:
      defaultZone: http://eureka7001.com:7001/eureka/
  • 修改cloud-provider-payment8001的配置
server:
  port: 8001

spring:
  application:
    name: cloud-payment-service
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource            # 当前数据源操作类型
    driver-class-name: org.gjt.mm.mysql.Driver              # mysql驱动包
    url: jdbc:mysql://localhost:3306/db_payment?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root
    password: root123
    druid:
      test-while-idle: true
      validation-query: SELECT 1
mybatis:
  mapperLocations: classpath:mapper/*.xml
  type-aliases-package: com.sgtech.springcloud.entity    # 所有Entity别名类所在包

eureka:
  client:
    #表示是否将自己注册进EurekaServer默认为true。
    register-with-eureka: true
    #是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    fetchRegistry: true
    service-url:
      #单机版
      # defaultZone: http://localhost:7001/eureka
      # 集群版
      defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
  instance:
    instance-id: payment8001

4.新建模块:cloud-payment8002

参考模块:cloud-payment8001新建cloud-payment8002。

  • 修改配置
server:
  port: 8002

spring:
  application:
    name: cloud-payment-service
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource            # 当前数据源操作类型
    driver-class-name: org.gjt.mm.mysql.Driver              # mysql驱动包
    url: jdbc:mysql://localhost:3306/db_payment?useUnicode=true&characterEncoding=utf-8&useSSL=false
    username: root
    password: root123
    druid:
      test-while-idle: true
      validation-query: SELECT 1
mybatis:
  mapperLocations: classpath:mapper/*.xml
  type-aliases-package: com.sgtech.springcloud.entity    # 所有Entity别名类所在包

eureka:
  client:
    #表示是否将自己注册进EurekaServer默认为true。
    register-with-eureka: true
    #是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
    fetchRegistry: true
    service-url:
      #单机版
      # defaultZone: http://localhost:7001/eureka
      # 集群版
      defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka

5.测试

  • 启动配置中心的2个服务:7001和7002
  • 启动cloud-provider-payment8001
  • 分别访问注册中心7001和7002:http://eureka7001.com:7001/http://eureka7002.com:7002/会发现多了一个注册中心副本和2个实例

在这里插入图片描述

  • 访问8001接口:http://localhost:8001/payment/get/22http://localhost:8002/payment/get/22

在这里插入图片描述

项目代码

https://gitee.com/indexman/cloudstudy

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132985.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FusionChartsFree及其教程「建议收藏」

    FusionChartsFree及其教程「建议收藏」今天在群里有人发了这个东西,主是FLASH图表控件,看到标题说是支持多种语言的,就下下来试了下,呵呵。。发现还真的很有用。。。先记下来。。以后可用于自己做的项目中。。同时也上网找到一本《FusionChartsFree中文开发指南.pdf》,同时也上传上来吧。。。…

    2022年7月13日
    18
  • 什么是MVC三层架构?「建议收藏」

    什么是MVC三层架构?「建议收藏」1.1、什么是MVC MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范。 是将业务逻辑、数据、显示分离的方法来组织代码。 MVC主要作用是降低了视图与业务逻辑间的双向偶合。 MVC不是一种设计模式,MVC是一种架构模式。当然不同的MVC存在差异。 Model(模型):数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:ValueObj

    2022年6月25日
    26
  • &0xffffffff(0x08)

    答案是-2为什么呢这里涉及到有符号整型数的补码,正数的补码与原码相同。负数的补码,将其原码除符号位外的所有位取反后加101111111+01111111=11111110符号位溢出了取反10000001再加110000010结果就得-2在网上看别人代码的时候,经常会看到他们把INF设为0x7fffffff,奇怪为什么设一个这么奇怪的十六进制数,一…

    2022年4月12日
    43
  • 数据库创建失败怎么办_oracle not available怎么解决

    数据库创建失败怎么办_oracle not available怎么解决同事在WinXPsp2上安装OracleDataBase10gEnterpriseEditionRelease10.1.0.2.0后,在创建数据库是发生如下错误:开始是出现一个错误提示对话框:ORA-28547:连接服务器失败,可能是Net8管理错误。

    2025年12月4日
    7
  • 此工作站和主域间的信任关系失败 又一解决办法_电脑加域后无管理员

    此工作站和主域间的信任关系失败 又一解决办法_电脑加域后无管理员某虚拟化的域控制器出现严重故障以至于不可修复,故使用之前Hyper-V中导出的备份恢复了域控制器。恢复后基本功能正常,但部分工作站登录时提示“此工作站和主域间的信任关系失败”。【解决方案】0、必须确保故障工作站没有其他的问题(如网络连接故障、DNS设置错误等);1、在不能登录域的工作站上,使用工作站本地的管理员用户登录系统;2、在工作站上打开powershell,输入Reset…

    2022年10月19日
    5
  • sealed密封类的使用

    sealed密封类的使用sealed 密封类 为了避免滥用继承形式 publicsealed 密封类不能作为基类被别的元素继承 但其可以继承别的类或接口密封类中不能声明受保护成员或虚成员 因为受保护成员只能在派生类中访问 而虚成员只能在派生类中重写方法密封类的不可继承性 是因为不能声明为抽象类 即 sealed 前不能用 abstract 修饰 使用密封类的情况 1 如果是静态

    2026年2月5日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号