04-服务发现组件Euerka的简单理解?

      大家之前有了解过注册中心:zookeeper吗?想必大家都知道注册中心的作用吧。那么eureka的作用实际和注册中心的作用差不多,但是也是有一些区别,稍后再说吧。

euerka主要包含两部分:euerka server和euerka client。

举例来说:比如有一个euerka server和多个微服务组成的euerka client,首先多个微服务启动之后,会去euerka server中进行注册,然后euerka server中的服务注册表会将可用的服务节点信息存储起来,这些节点信息会在euerka server的界面展示,给与用户很好的体验。但是?如果euerka server这里我们指定的是一个,如果euerka server挂掉了怎么办,存储的节点信息在丢失了吗?其实euerka server不只是可以有一个,它是可以有多个的,Eureka Server之间通过复制的方式完成数据的同步,而且Eureka Server还提供了一个叫做客户端缓存机制的功能。比如Eureka Server挂掉,那么客户端可以利用缓存机制保存信息,然后由其他服务api使用。另外Eureka Client是一个java客户端,内置一个使用轮询(round-robin)负载算法的负载均衡器。只要应用启动,直接向Eureka Server发送心跳,周期30秒,如果在多个心跳周期没有接到每个节点的心跳,那么Eureka Server将会从服务注册表中把这个服务节点移除(默认90 秒)。这些功能是很实用的,在开发中经常用到。

总结:Eureka通过心跳检查、客户端缓存等机制,提高了系统的高可用性和灵活性。【大家可以了解下ACP理论】

具体的实现步骤,可以访问:https://blog.csdn.net/ycd500756/article/details/80955485

其实整体就是:

先编写Eureka Server,先添加依赖、在添加配置【包含端口号、地址】、最重要的一步:在启动类加上:@EnableEurekaServer、然后访问对应的地址:

04-服务发现组件Euerka的简单理解?_第1张图片

在编写Eureka Client:加依赖、配置【包含端口号、注册地址】、启动类加注解:@EnableEurekaClient、启动访问地址:

04-服务发现组件Euerka的简单理解?_第2张图片

另外还要一个是保护模式:

在Eureka Server的首页看到以下这段提示:

04-服务发现组件Euerka的简单理解?_第3张图片如果收到网络等因素的影响,Eureka Server会将当前的实例注册信息保护起来,一旦进入保 护模式,Eureka Server将会尝试保护其服务注册表中的信息,不再删除服务注册表中的 数据(也就是不会注销任何微服务)。这是比较靠谱的,并非是异常信息。

你可能感兴趣的:(微服务)