目录

  • `eureka` 高可用集群
  • `eureka` 高可用集群搭建
    • 项目的创建
    • `springboot` 与 `springcloud` 对应版本
    • `Maven` 依赖
      • `springcloud-learn` 父项目
      • 其余三个子模块
    • `application.properties` 配置文件
      • 修改 `hosts` 文件
      • `eureka-server-one`
      • `eureka-server-two`
      • `eureka-server-three`
    • `eureka` 服务端注解 `@EnableEurekaServer`
    • 启动服务,测试

eureka 高可用集群

在实际的生产环境中,eureka 常常是以集群的方式提供服务的,目的就是要保证高可用性,同时它还保证了分区容错性。这也满足了一个健壮的分布式系统所要求的 CAP 理论原则,即 eureka 保证了高可用性,分区容错性

eureka 的简介:https://blog.csdn.net/weixin_38192427/article/details/113854489

eureka 高可用集群搭建

项目的创建

创建父项目,eureka 服务端子项目 3 个,如下

springbootspringcloud 对应版本

springboot 版本一定要与 springcloud 版本对应,官方给出的对应关系:https://start.spring.io/actuator/info

也可以参考如下博客:https://blog.csdn.net/qq_31868147/article/details/105808148

Maven 依赖

springcloud-learn 父项目

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.9.RELEASE</version><relativePath></relativePath>
</parent><dependencyManagement><dependencies><!--springcloud依赖--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Finchley.SR4</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>

其余三个子模块

三个子模块的依赖都一样

<dependencies><!--springcloud eureka服务端--><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--lombok 插件--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.12</version><scope>provided</scope></dependency>
</dependencies>

application.properties 配置文件

修改 hosts 文件

由于条件有限,只能在本机模拟三台服务器,此时就要修改 hosts 文件。windows 目录:C:\Windows\System32\drivers\etc\hosts,在末尾处添加如下映射配置

127.0.0.1 eureka7001
127.0.0.1 eureka7002
127.0.0.1 eureka7003

eureka-server-one

server.port=8761#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
eureka.client.fetch-registry=false
#false表示不向注册中心注册自己
eureka.client.register-with-eureka=false
eureka.client.service-url.defaultZone=http://eureka7002:8762/eureka/,http://eureka7003:8763/eureka/
#注册进对方注册中心展示的实例名称
eureka.instance.hostname=eureka7001

eureka-server-two

server.port=8762#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
eureka.client.fetch-registry=false
#false表示不向注册中心注册自己
eureka.client.register-with-eureka=false
eureka.client.service-url.defaultZone=http://eureka7001:8761/eureka/,http://eureka7003:8763/eureka/
#注册进对方注册中心展示的实例名称
eureka.instance.hostname=eureka7002

eureka-server-three

server.port=8763#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
eureka.client.fetch-registry=false
#false表示不向注册中心注册自己
eureka.client.register-with-eureka=false
eureka.client.service-url.defaultZone=http://eureka7001:8761/eureka/,http://eureka7002:8762/eureka/
#注册进对方注册中心展示的实例名称
eureka.instance.hostname=eureka7003
  • eureka.client.service-url.defaultZone:有多台服务器时,用逗号隔开。它们之间是互相注册的,以便于客户端的数据同步

eureka 服务端注解 @EnableEurekaServer

3 个服务端的子项目中的启动类上分别添加注解 @EnableEurekaServer

@EnableEurekaServer
@Slf4j
@SpringBootApplication
public class AppOne {public static void main(String[] args) {SpringApplication.run(AppOne.class, args);log.info("------AppOne Running------");}
}

启动服务,测试

分别启动 eureka-server-oneeureka-server-twoeureka-server-three 三个 eureka 服务端项目,测试

浏览器地址栏输入:http://eureka7001:8761/,页面如下


浏览器地址栏输入:hhttp://eureka7002:8762/,页面如下


浏览器地址栏输入:http://eureka7003:8763/,页面如下

注意 DS Replicas


这里的意思就是:这两个注册中心是当前注册中心的集群节点,当前注册中心会从这两个节点同步服务,这里是通过 eureka.instance.hostname 辨别的,所以配置 eureka.instance.hostname 参数的时候需要配置不同的 hostname。这里有显示配置的集群节点,就证明集群配置成功了

springcloud之eureka集群搭建相关推荐

  1. 疯狂Spring Cloud连载(5)Eureka集群搭建

    2019独角兽企业重金招聘Python工程师标准>>> 本文节选自<疯狂Spring Cloud微服务架构实战> 京东购买地址:https://item.jd.com/1 ...

  2. Eureka集群搭建

    Eureka集群搭建 配置映射 修改hosts对Eureka节点进行区分,因为我这里是单机模拟集群,实际情况这三个节点应该放在不同机器上. 127.0.0.1 eureka1.com 127.0.0. ...

  3. Eureka 集群搭建

    一.Eureka 高可用集群 在实际的生产环境中,eureka 常常是以集群的方式提供服务的,目的就是要保证高可用性,同时它还保证了分区容错性.这也满足了一个健壮的分布式系统所要求的 CAP 理论原则 ...

  4. springcloud之eureka集群

    文章目录 一.eureka集群搭建 二.eureka自我保护机制 一.eureka集群搭建 高可用集群配置 当注册中心扛不住高并发的时候,这时候要用集群来抗 普通操作 新建两个module并且更改其中 ...

  5. 《SpringCloud超级入门》使用Eureka集群搭建《十三》

    前面我们搭建的注册中心只适合本地开发使用,在生产环境中必须搭建一个集群来保证高可用.Eureka 的集群搭建方法很简单:每一台 Eureka 只需要在配置中指定另外多个 Eureka 的地址就可以实现 ...

  6. SpringCloud--Eureka服务注册与发现 Eureka 集群搭建 详细案例!!!

    SpringCloud组件--Eureka 完整笔记 一.Eureka基础知识 1.1.什么是服务治理 ? 1.2. 什么是服务注册与发现? 1.3.Eureka两组件:Eureka Server和E ...

  7. eureka配置_F版本SpringCloud 5—Eureka集群和自我保护机制

    源码地址:https://gitee.com/bingqilinpeishenme/Java-Tutorials 前言 上篇文章中,通过代码搭建了Eureka注册中心和客户端,是Eureka的简单应用 ...

  8. Eureka集群搭建,unavailable-replicas服务节点不可用解決方案

    最近由于项目需要搭建了eureka集群,集群搭建完成后,发现服务节点均在unavailable-replicas下,即说明集群搭建失败,各节点之间不能互相通信,网上查找了各种资料,终于解决,现将问题处 ...

  9. eureka注册中心HA集群搭建

    今天我们讲一下高可用的eureka注册中心(eureka server cluster) SpringCloud支持Eureka.Zookeeper.Consul作为注册中心,这里我们选择Eureka ...

  10. eureka 集群失败的原因_Eureka集群的那些坑

    今天遇到一个Eureka集群的一个坑. 问题现场类似是这样的:两台Eureka组成的服务注册中心集群,两台服务提供方server1.server2,两个服务调用方client1.client2. 正常 ...

最新文章

  1. Apache HTTP Server Version 2.2 文档中文版
  2. 学好人工智能,其实不难,从以下几点开始
  3. 哈佛大学让青蛙断腿再生:有骨头有血管,对刺激物还会产生强烈踢腿反应
  4. SQL Server 执行计划缓存
  5. Java 并发实践 — ConcurrentHashMap 与 CAS
  6. 在 Sublime Text 中使用 SFTP 插件快速编辑远程服务器文件 Sublime-text with SFTP plugin ...
  7. 假期把技术书籍和焦虑放一边,我做了几天...
  8. Redis集群环境之linux搭建多机版---已完结,跟着一步一步来你就可以集群成功
  9. DOM Element对象 参考手册
  10. c语言 结构体的输入输出_C语言的控制结构和输入输出
  11. CMMI质量管理体系——软件测试缺陷管理
  12. WPF解析Fnt字体
  13. AutoCAD2007 快捷键介绍和线形设置
  14. 使用selenium爬取搜狗微信文章
  15. 电路里的希腊字母读音
  16. 如何将河道水系CAD数据导入HEC-RAS中?详细教程!
  17. NYOJ-712(动态规划)-题目----------------------------- 探寻宝藏
  18. input、textarea等输入框输入中文时,拼音在输入框内会触发input事件的问题
  19. go语言google pay支付验证订单
  20. 极简汉字史 第一章 文象列而结绳移 鸟迹明而书契作

热门文章

  1. WWDC2019最值得看的十个视频
  2. 倍增(LCA与ST表)
  3. 快速记下html css,如何快速记住及输入CSS样式属性单词?
  4. 497.非重叠矩形中的随机点
  5. docker常用操作和命令
  6. sql删除表中某个字段的重复数据,取较大者
  7. Aho-Corasick暂存第二篇
  8. jar命令成功完成 java -jar 命令却提示“没有主清单属性”!
  9. LIBSVM使用方法及参数设置
  10. java使用io上传文件_文件传输基础——Java IO流