Spring-Cloud学习笔记(二)—— SpringCloud组件

Eureka

  • Eureka是什么?

eureka是Netflix的子模块之一,也是一个核心的模块,eureka里有2个组件,一个是EurekaServer(一个独立的项目) 这个是用于定位服务以实现中间层服务器的负载平衡和故障转移,另一个便是EurekaClient(我们的微服务)它是用于与Server交互的,可以使得交互变得非常简单:只需要通过服务标识符即可拿到服务。

  • 与spring-cloud的关系:

Spring Cloud 封装了Netflix 公司开发的Eureka 模块来实现服务注册和发现(可以对比Zookeeper)。Eureka 采用了C-S 的设计架构。Eureka Server 作为服务注册功能的服务器,它是服务注册中心。而系统中的其他微服务,使用Eureka 的客户端连接到Eureka Server并维持心跳连接。这样系统的维护人员就可以通过Eureka Server 来监控系统中各个微服务是否正常运行。SpringCloud 的一些其他模块(比如Zuul)就可以通过Eureka Server 来发现系统中的其他微服务,并执行相关的逻辑。

  • 角色关系图

  • 如何使用?

在spring-cloud项目里面加入依赖:

Eureka客户端:

<dependency>

    <groupId>org.springframework.cloud</groupId>

    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>

</dependency>

Eureka服务端:

<dependency>

    <groupId>org.springframework.cloud</groupId>

    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>

</dependency>

Eureka服务端项目里面加入以下配置:

server:
    port: 3000
eureka:
    server:
    enable-self-preservation: false  #关闭自我保护机制
    eviction-interval-timer-in-ms: 4000 #设置清理间隔(单位:毫秒 默认是60*1000)
    instance:
        hostname: localhost
    client: 
        registerWithEureka: false #不把自己作为一个客户端注册到自己身上
        fetchRegistry: false  #不需要从服务端获取注册信息(因为在这里自己就是服务端,而且已经禁用自己注册了)
        serviceUrl:
            defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值