欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Eureka

程序员文章站 2022-07-02 17:25:50
分布式服务必然要面临的问题: 服务管理 - 如何自动注册和发现 - 如何实现状态监管 - 如何实现动态路由 - 服务如何实现负载均衡 - 服务如何解决容灾问题 - 服务如何实现统一配置 现在日益复杂的互联网环境,一个项目肯定会拆分出十几,甚至数十个微服务。此时如果还人为管理地址,不仅开发困难,将来测 ......

分布式服务必然要面临的问题:

    服务管理
  - 如何自动注册和发现
  - 如何实现状态监管
  - 如何实现动态路由
  - 服务如何实现负载均衡
  - 服务如何解决容灾问题
  - 服务如何实现统一配置

  现在日益复杂的互联网环境,一个项目肯定会拆分出十几,甚至数十个微服务。此时如果还人为管理地址,不仅开发困难,将来测试、发布上线都会非常麻烦,这与devops的思想是背道而驰的。

eureka做什么

  eureka 负责管理、记录服务提供者的信息。服务调用者无需自己寻找服务,而是把自己的需求告诉eureka,然后eureka会把符合你需求的服务告诉你。

同时,服务提供方与eureka之间通过`“心跳”`机制进行监控,当某个服务提供方出现问题,eureka自然会把它从服务列表中剔除。

这就实现了服务的自动注册、发现、状态监控。

 

1.原理图

Eureka

 

* eureka:就是服务注册中心(可以是一个集群),对外暴露自己的地址

* 提供者:启动后向eureka注册自己的信息(地址、提供什么服务)

* 消费者:向eureka订阅服务,eureka会将相对应服务的所有提供者地址列表发送给消费者、并且定期更新

* 心跳(续约):提供者定期通过http方式向eureka刷新自己的状态

       消费者定期拉取,注意拉取和推送的概念

未完待续....