首页 > 编程知识 正文

eureka集群同步原理,redis集群三种方式

时间:2023-05-06 12:27:41 阅读:128734 作者:4262

基本信息Eureka是Netflix开发的服务发现组件,本身是基于REST的服务。 spring cloud框架与Eureka集成,在微服务体系结构中充当注册中心,便于管理各种微服务。

欧莱卡原理

Eureka分为Eureka服务器和Eureka客户端,以及服务端和客户端。 Eureka Server是注册中心、服务端,服务提供者和消费者是客户端,消费者也是服务者,服务者也是消费者。 同时,Eureka Server在启动时默认注册自己并成为服务,因此Eureka Server也是客户端,这是构建Eureka群集的基础。

服务提供者在注册中心注册服务,并每30秒发送一次心跳。 如果Eureka在90秒后没有收到服务提供者的心跳,就像人活着一样,则判断服务已死亡并注销服务。 此处注销并不是立即注销,而是在60秒后集中注销此区间中“死亡”的服务。 如果立即注销,会给Eureka带来很大的负担。 这些时间参数都可以人为构成。

Eureka还具有自我保护机制,如果15分钟内85%以上的节点没有正常的心跳,Eureka可能会认为客户端和注册中心发生了网络故障,从而接收心跳或删除服务

客户端将服务列表拉到注册中心。 由于单个服务器的承载量有限,因此将在多个服务器上部署相同的服务,每个服务器上的服务都将在注册中心注册服务。 他们有相同的服务名称,但有不同的实例id,所以会引出服务列表。 最终,可以通过负载平衡来获取服务,并分散各服务的服务。

如果只配置一个Eureka群集Eureka服务端,则如果此服务端崩溃,所有服务都将不可用。 这不是我们所不期待的。 所以为了保证高可用性,有必要构建Eureka集群。

根据前面的原理,Eureka Server也是客户端,因为Eureka Server表示启动时默认注册自己,使其成为服务。 这意味着可以配置多个Eureka Server,以便彼此注册。 当服务提供商在其中一个Eureka中注册服务时,该服务将与其他Eureka共享,所有Eureka都将获得相同的服务。

Eureka集群构建步骤很简单。

引入服务器依赖关系。

注释主方法@EnableEurekaServer

然后,设置端口、名称和要在哪个服务端注册的url

服务提供者注册服务的步骤也是如此。

引入客户端依赖关系。

在主方法中添加注释@EnableDiscoveryClient

设置在哪个服务端注册的url? 这里把所有的服务端加在一起。 注册一个服务器端也会被所有服务器端共享,但不能保证此服务器端没有跳转。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。