Eureka是什么

Eureka是基于REST(Representational State Transfer)服务,提供服务发现并实现负载均衡和故障转移。

自我保护机制

  1. 开启保护机制后,注册的进Eureka的服务就不保证100%可用,此时我们可以使用eureka.server.enable-self-preservation=false来关闭保护机制,这样可以确保注册中心中不可用的实例被及时的删除

  2. 如果在15分钟内超过85%的客户端节点都没有正常的心跳,那么Eureka就认为客户端与注册中心出现了网络故障,Eureka Server自动进入自我保护机制,此时会出现以下几种情况:

    · Eureka Server不再从注册列表中移除因为长时间没收到心跳而应该过期的服务。

    · Eureka Server仍然能够接受新服务的注册和查询请求,但是不会被同步到其它节点上,保证当前节点依然可用。

    · 当网络稳定时,当前Eureka Server新的注册信息会被同步到其它节点中。

版本选择

官网最新版。。。(2020.10.16日截图)

下图查看地址

服务搭建

创建项目

IDEA创建,jdk8,其他步骤省略

注意:2.2.5.RELEASE官方推荐使用SpringBoot版本为2.3.3

下图查看地址

导入GAV坐标

<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-netflix-eureka-server -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
<version>2.2.5.RELEASE</version>
<exclusions>
<exclusion>
<artifactId>servlet-api</artifactId>
<groupId>javax.servlet</groupId> <!--spring-boot-starter-web包中自带javax.servlet,防止冲突,导入时排除-->
</exclusion>
</exclusions>
</dependency>

application启动类添加注解

@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaApplication.class, args);
} }

配置yml

server:
port: 8761 eureka:
instance:
hostname: 192.168.1.2 #可以是任意名字,方便区分
client:
register-with-eureka: false #不向注册中心注册自己
fetch-registry: false #表示自己端就是注册中心,并不需要拉取里面注册了哪些服务
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

启动项目

访问 localhost:8761,如正常会显示如下页面,至此,注册中心单机版搭建成功

集群配置

修改上面的yml

server:
port: 8761
eureka:
instance:
hostname: 192.168.1.2 #可以是任意名字,方便区分
client:
register-with-eureka: false #不向注册中心注册自己
fetch-registry: false #表示自己端就是注册中心,并不需要拉取里面注册了哪些服务
service-url:
defaultZone: http://192.168.1.3:${server.port}/eureka/,http://192.168.1.4:${server.port}/eureka/ #(修改点)其他Eureka服务地址

打jar包到另外一台电脑OR虚拟机

注:如果本机跑两个,需修改端口

修改yml文件中eureka.instance.hostname及defaultZone后启动,分别访问对应服务的地址192.168.1.2:8761、192.168.1.3:8761。。。

看到如下页面后证明成功

Eureka单机&集群配置的更多相关文章

  1. Spring Cloud Eureka的集群配置(六)

    1.再次创建2个Eureka工程 工程名:microservicecloud-eureka-7002 工程名:microservicecloud-eureka-7003 2.pom.xml文件 < ...

  2. Eureka的集群配置

    1:步骤说明 2:修改映射配置 3:修改Eureka的.yml配置文件 以其中一个为例 4:在8001中同时注册 5:测试结果

  3. Eureka Server 集群配置

    注册中心: debug: true spring: application: name: eureka-server logging: level: com.netflix.eureka: 'off' ...

  4. hadoop 3.x 单机集群配置/启动时的问题处理

    一.修改配置文件(hadoop目录/etc/hadoop/配置文件) 1.修改hadoop-env.sh,指定JAVA_HOME 修改完毕后 2.修改core-site.xml <configu ...

  5. SpringCloud创建Eureka模块集群

    1.说明 本文详细介绍Spring Cloud创建Eureka模块集群的方法, 基于已经创建好的Spring Cloud Eureka Server模块, 请参考SpringCloud创建Eureka ...

  6. redis集群配置及python操作

    之前我们分析过喜马拉雅的爬取信息,使用分布式爬取,而且需要修改scrapy-redis的过滤算法为布隆过滤来减少redis内存占用,最后考虑这样还是不一定够,那么redis集群就是更好的一种选择方式了 ...

  7. Eureka单机高可用伪集群配置

    Eureka Server高可用集群理论上来讲,因为服务消费者本地缓存了服务提供者的地址,即使Eureka Server宕机,也不会影响服务之间的调用,但是一旦新服务上线,已经缓存在本地的服务提供者不 ...

  8. 三(2)、springcloud之Eureka集群配置

    1)原理说明** 服务启动后向Eureka注册,Eureka Server会将注册信息向其他Eureka Server进行同步,当服务消费者要调用服务提供者,则向服务注册中心获取服务提供者地址,然后会 ...

  9. SpringCloud学习笔记(四):Eureka服务注册与发现、构建步骤、集群配置、Eureka与Zookeeper的比较

    简介 Netflix在设计Eureka时遵守的就是AP原则 拓展: 在分布式数据库中的CAP原理 CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(一致性). Availab ...

随机推荐

  1. 如何在pyqt中通过调用 SetWindowCompositionAttribute 实现Win10亚克力效果

    亚克力效果 在<如何在pyqt中实现窗口磨砂效果>和<如何在pyqt中实现win10亚克力效果>中,我们调用C++ dll来实现窗口效果,这种方法要求电脑上必须装有MSVC.V ...

  2. AI算法测评(二)--算法测试流程

    根据算法测试过程中遇到的一些问题和管理规范, 梳理出算法测试工作需要关注的一些点: 编号 名称 描述信息 备注 1 明确算法测试需求 明确测试目的 明确测试需求, 确认测试需要的数据及场景 明确算法服 ...

  3. 有向图子图 DAG 数量

    考虑 \(\tt DP\),朴素的想法是令 \(f_S\) 表示 \(S\) 这个导出子图将边定向集合构成 \(\tt DAG\) 的方案数. 转移可以考虑剥去所有入度为 \(0\) 的点,那么我们就 ...

  4. Eclipse集成Git/SVN插件及使用

    感谢大佬:https://www.cnblogs.com/jpfss/p/8027347.html 1. Git插件安装 1.1 下载插件 首先打开Eclipse,然后点击Help>Instal ...

  5. Jackson转换为Collection、Array

    1. Jackson转化为Array 注意的地方就是实体类一定要有无参的构造方法,否则会报异常 //com.fasterxml.jackson.databind.exc.InvalidDefiniti ...

  6. 恶补Java Swing线程刷新UI机制(由浅到深的参考大佬博文)

    1. java中进度条不能更新问题的研究 感谢大佬:https://blog.csdn.net/smartcat86/article/details/2226681 为什么进度条在事件处理过程中不更新 ...

  7. HashCode补充

    public class Demo4 { public static void main(String[] args) { String str1 = "hello"; Strin ...

  8. LeetCode随缘刷题之最长回文子串

    这一题我用的相对比较笨的方法. 相对于大佬们用的动态规划法,比较复杂.但却更容易理解,我主要是通过记录下标来确定最长回文串的. package leetcode.day_12_06; /** * 给你 ...

  9. JavaEE复制后项目出错或者无法运行的解决方法

    eclipse中,直接复制项目,会出现一些错误,解决方法如下: 1,在复制后的工程上点右键->properties->Web Project Settings>web context ...

  10. Linux基础:初识shell之系统命令基础

    一 shell介绍 shell Shell 中文意思贝壳,寓意类似内核的壳.Shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务,简而言之就是只要能够操作应用 ...