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. AT2402 [ARC072D] Dam

    首先我们可以将 \(t_i \times v_i\) 看作一个整体,不妨令 \(x_i = v_i, y_i = t_i \times v_i\) 这样两堆水混合后相当于将两个维度相加,方便了计算. ...

  2. JS 数据类型与运算符

    以下内容均整理自:廖雪峰老师的JS教程 非常感谢廖老师! 统一使用var声明即可,JS会自动判断类型. 数据类型 1. Number JavaScript不区分整数和浮点数,统一用Number表示,以 ...

  3. Android基本控件Spinner的简单使用【转】

    Android基本控件Spinner的简单使用 感谢大佬:https://blog.csdn.net/bingocoder/article/details/80469939 学习过了Textview, ...

  4. windows10下设置Maven的本地仓库和阿里云的远程中央仓库

    感谢原文作者:测试zhang 原文链接:https://www.jianshu.com/p/1782feee6eff 菜鸟:https://www.runoob.com/maven/ 1.设置Mave ...

  5. 自定义UITableview自带侧滑删除按钮样式 by 徐

    效果如下: 实现原理: 1.打开tableview自带的侧滑删除功能 核心代码: 1 -(void)tableView:(UITableView *)tableView commitEditingSt ...

  6. shell——mkfifo管道

    转自:http://blog.sina.com.cn/s/blog_605f5b4f0101azuc.html 创建命名管道的方法为:mkfifo pipe_name. 这样就能创建一个命名的管道pi ...

  7. Go语言程序调试

    1. Go语言二进制程序分析    在分析一些使用GOlang语言进行编译的恶意程序时,由于程序在被打包成二进制程序时会打包诸多引用的库,并且作者对二进制程序进行了去符号化,导致在动态或是静态分析时函 ...

  8. 聊聊DevOps制品管理-不止是存储制品这么简单

    什么是制品? 制品是指由源码编译打包生成的二进制文件,不同的开发语言对应着不同格式的二进制文件:这些二进制文件通常用于运行在服务器上或者作为编译依赖,"制品的管理"是配置管理的重要 ...

  9. 关于TP90 TP99 等常用于评估软件系统的处理性能的指标概念

    工作中还是蛮少直接接触到评估系统性能的,但是不妨碍有兴趣了解.认为这是常识,只是个人才疏学浅不了解其定义. TP=Top Percentile,Top百分数,是一个统计学里的术语,与平均数.中位数都是 ...

  10. 《SelfClass》——Docker

    <SelfClass>--Docker 根据我的个人计划,我需要先了解一下Docker,并且能够使用起来. 目的:在我Mac上搭建一个Docker,在Docker上搭建一个MySQL数据库 ...