【微服务】微服务调用原理及服务治理

本文通过图文结合,简要讲述微服务的调用原理,以及服务治理的相关概念。

1.微服务的调用原理

  举个栗子:你去会所洗脚。首先,技师肯定要先去会所应聘,通过之后,会所会记录该技师的信息和技能,然后你到会所之后,肯定是要告诉会所你需要洗脚的服务,然后会所找到这个技师的信息,告诉你技师现在在111房间等你,然后你就直接去111房间找这个技师服务去了。

  微服务的调用原理和这个就有着异曲同工之妙,我们的服务提供方B,要注册自己的名称、IP地址和端口号到注册中心,当有服务调用方需要调用服务的时候,向注册中心拉取的所有的服务列表(当前有效的服务都会提供),服务调用方拿到需要的ip地址和端口号之后,就可以找到我们的服务提供方,就能直接去调用了。

2.服务治理的相关概念

服务的注册

   对外提供服务的这个服务,将ip地址和端口 注册到注册中心的map集合中

服务的发现

  服务的调用方发送请求去注册中心获取当前有效的服务列表的信息(获取所有服务列表的信息)

服务的续约

  每隔一段时间,我们的服务会向注册中心报告"我还活着",注册中心就会将你最后一次的请求时间设置到当前的服务上

服务的剔除

   如果过了指定时间依然没来续约(nacos中是30s)、那么注册中心就会将你这个服务的信息给移除掉,这个就叫做服务的剔除

服务的同步

  因为单机部署存在单点问题,如果nacos宕机了 ,所有的服务就都不能访问了,所以在生产环境中我们会做成集群,服务向注册中心注册的时候,多个nacos服务的信息是需要同步的,这个就叫做服务的同步

服务的自我保护

   在某一个时间点,大量的服务都没有来续约,这种场景下,注册中心是不会将所有的服务都剔除去,而是等待一段时间(等待网络的恢复),如果过了最大的等待时间,依然没有恢复,这个时候就会移除这个列表。

相关推荐
Wang's Blog5 小时前
Java 项目实战: 交友项目 - 章节复盘:微服务骨架与手机号验证码登录
java·微服务·交友
我不会起名字3227 小时前
负载均衡选错:轮询在长连接下的偏斜问题
微服务·负载均衡·grpc·长连接
code_slave(码畜)1 天前
微服务架构落地:OpenFeign 服务远程调用 + 线程池隔离架构实战 —— 超时控制、重试机制、线程池隔离,防雪崩
spring boot·spring cloud·微服务·云原生·架构·openfeign
涵美女程序猿1 天前
ChatCut online 剪微服务熔断测试录屏:仪表盘告警、降级日志与恢复时刻怎样对应
程序人生·微服务·云原生·架构·电脑
hhb_6181 天前
智联AI办公微服务技术全解析
人工智能·微服务·架构
Thomas.Sir1 天前
第31课:微服务消息驱动(RabbitMQ/RocketMQ)适配与解耦实战
微服务·rabbitmq·rocketmq
Thomas.Sir2 天前
第29课:微服务异步调用、线程池优化 & 事件驱动开发
java·redis·微服务
CarIise2 天前
Maven私服(Nexus)
微服务
敲上瘾2 天前
分布式系统——Redis哨兵:自动故障转移与选举原理
linux·数据库·redis·分布式·缓存·微服务
旋生万物3 天前
分形自相似:微服务、缓存、Prompt 模板为什么长一样
人工智能·缓存·微服务·云原生·prompt