Eureka 系列(01)最简使用姿态

Posted binarylei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Eureka 系列(01)最简使用姿态相关的知识,希望对你有一定的参考价值。

Eureka 系列(01)最简使用姿态

Eureka 是由 Netflix 公司的服务发现中间件,包括服务发现服务器和客户端的。Spring Cloud Eureka 官网文档

1. 服务发现与发现

1.1 服务发现(Service Discovery)

服务发现:在计算机网络中,一种自动发现设备或者服务的技术,通过服务发现协议(Service Discovery Protocol)实现。常见的协议有以下几种:

  • Java: Jini(Apache River)
  • REST: HATEOAS
  • Web Services: UDDI(Universal Description Discovery and Integration)

1.2 服务注册(Service Registration)

服务注册(Service Registration)在计算机网络中,为了更好地治理多个设备或者服务,这些设备或者服务主动或者被动注册到管理中心,以便服务被发现和消费。常见注册中心有以下几种:

  • Apache Zookeeper: CAP 满足 CP 理论,高一致性,牺牲了可用性。
  • Netflix Eureka: CAP 满足 AP 理论,高可用性,牺牲了高一致性。
  • Consul: GO语言编写。

2. Eureka

2.1 服务端: Eureka Server

Eureka Server 是 Eureka Client 的注册服务中心,管理所有注册服务、以及其实例信息和状态。

运行 Eureka Server:

  • 依赖:org.springframework.cloud:spring-cloud-starter-eureka-server
  • 激活: @EnableEurekaServer

默认情况下 Eureka 即是服务端,也是作为其它 Eureka Server 的客户端,需要配置 Eureka 的地址,单机版配置如下:

# 因为当前的 Eureka 是单机的,需要关闭集群的配置
eureka:
  client:
    register-with-eureka: false     # 取消向注册中心注册
    fetch-registry: false           # 取消向注册中心获取注册信息(服务、实例信息)
    service-url:
      defaultZone: http://localhost:10001/eureka

2.1.1 Eureka Server HA

集群情况下 Eureka 也是作为其它 Eureka Server 的客户端,配置 Eureka 的地址即可:

eureka:
  instance:
    hostname: peer1
  client:
    service-url:
      defaultZone: http://peer2:10012/eureka,http://peer3:10013/eureka

2.1.2 OPEN API

表1:Eureka OPEN API
操作 OPEN API
获取所有服务 http://${host}:${port}/euraka/apps
获取指定应用服务 http://${host}:${port}/euraka/apps/{appName}
获取指定应用的指定实例服务 http://${host}:${port}/euraka/apps/{appName}/{id}
注册实例服务 http://${host}:${port}/euraka/apps/{appName}

2.2 客户端: Eureka Client

Eureka Client 为当前服务提供注册、同步、查找服务以及其实例信息或状态等能力。

运行 Eureka Client

  • 依赖:org.springframework.cloud:spring-cloud-starter-eureka

  • 激活: @EnableEurekaClient(只有 Eureka 才有效) 或者 @EnableDiscoveryClient

    是不是没扫描包@ComponentScan

eureka.client.service-url.defaultZone=http://localhost:10001/eureka

(1) Euraka Client API

  • EurekaClientConfigBean Eureka 客户端配置 API
  • EurekaInstanceConfigBean Eureka 实例配置 API

每天用心记录一点点。内容也许不重要,但习惯很重要!

以上是关于Eureka 系列(01)最简使用姿态的主要内容,如果未能解决你的问题,请参考以下文章

Eureka 系列(02)客户端源码分析

SpringCloud系列四:Eureka 服务发现框架(定义 Eureka 服务端Eureka 服务信息Eureka 发现管理Eureka 安全配置Eureka-HA(高可用) 机制Eur(代码片段

springCloud系列教程01:Eureka 注册中心集群搭建

基于Mediapipe与Unity的人体姿态捕捉系统

Spring Cloud Netflix-Eureka集群数据同步

springcloud系列 eureka注册中心集群搭建 服务消费方调用提供方