服务发现Consul框架介绍

什么是服务注册与发现?

服务注册/发现是微服务架构中不可或缺的重要组件,起初服务都是单节点的甚至是单体服务,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问(HttpClient/RestTemplate),直到后面出现了多个节点的分布式架构,起初的解决手段是在服务端负载均衡,同时在网关层收束接口,使不同的请求转发到对应不同端口上,这也是前后分离防止前端跨域的手段之一:

 

要命的是,nginx并不具有服务健康检查的功能,服务调用方在调用一个服务之前是无法知悉服务是否可用的,不考虑这一点分布式的架构高可用的目标就成了一个摆设,解决手段也很简单:对超时或是状态码异常的请求进行重试尝试,请求会被分发到其他可用节点,或者采用服务注册与发现机制察觉健康的服务。

 

Consul中的服务发现

consul在Java开发者眼中只有一个会被用到的功能:服务注册与发现,即Service Discovery,其核心流程如下:<br consul在java开发者眼中只有一个会被用到的功能:服务注册与发现,即service discovery,其核心流程如下:

 

在consul中,假使是B服务调用A服务,其大致流程即为:<br 在consul中,假使是b服务调用a服务,其大致流程即为:

A服务调用consul的API注册自己 -> consul定时检查A服务状态(默认)或A服务本身与consul维持心跳请求 -> B服务通过consul提供的DNS调用A服务(默认)或从consul获取健康的服务列表并通过某种算法选择合适的服务调用。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值