美文网首页
Eureka简单介绍

Eureka简单介绍

作者: zain丶月下 | 来源:发表于2021-02-19 23:31 被阅读0次

    一、Eureka分为服务端server和客户端client
    每个服务都是一个项目
    客户端、服务端、注册中心
    服务端先向注册中心 注册自己,表明自己还存活
    服务端不需要自己注册自己、

    # 以下为注册中心注册
    eureka:
      instance:
        hostname: localhost      #服务实例名称
      client:
        register-with-eureka: false   #false 表示不向注册中心注册自己
        fetch-registry: false         #false 表示自己端就是注册中心,我的职责是维护服务实例,并不需要去检索服务
        service-url:
          defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/  #eureka地址
    

    eureka 集群:互相注册,相互守望

    在服务发布则在服务发布的过程中,注册到注册中心,调用者之前通过id查找对应的地址。现在则直接通过服务的应用名称,配置负载均衡这解决问题!

    spring:
      application:
        name: cloud-payment-service
    # 以下为客户端、服务器注册
    eureka:
      client:
        register-with-eureka: true
        fetch-registry: true
        service-url:
          defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/    #注册中心地址(-------------------------------调用者只关心自己的ip------具体内部跳转不管调用者的事)
    
    image.png

    特别功能:
    如果在8001上面需要查看自己下面有哪些服务???
    springcloud 提供了DiscoveryClient 方法。我们能够通过DiscoveryClient获取指定的方法

    List<String> services = discoveryClient.getServices();
            for (String element:services) {
                log.info("   ----- element:" +element);
            }
            List<ServiceInstance> instances = discoveryClient.getInstances("cloud-payment-service");
            for (ServiceInstance instance:instances) {
                log.info(instance.getServiceId()+"\t" + instance.getHost()+"\t"+instance.getPort()+"\t"+instance.getUri());
            }
    

    eureka的自我保护机制。 自行百度查询

    切记中心思想:(eureka,zookeper,consul思想一样)

    注册中心相互守望,提供者、调用者将自己也注入到注册中心。调用者通过服务名称查找到对应的服务进行调用

    在作为服务注册中心- eureka 是一个单独的项目。
    zookeper是一个配置好的应用,
    consul也是一个配置好的应用

    相关文章

      网友评论

          本文标题:Eureka简单介绍

          本文链接:https://www.haomeiwen.com/subject/ienctltx.html