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

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

1.微服务的调用原理

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

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

2.服务治理的相关概念

服务的注册

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

服务的发现

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

服务的续约

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

服务的剔除

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

服务的同步

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

服务的自我保护

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

相关推荐
野熊佩骑7 小时前
Kubernetes实战系列文章(三) 之 K8S运维常用命令
linux·运维·docker·微服务·云原生·容器·kubernetes
ZYJCSZKJ9 小时前
基于微服务架构的本地生活POI团购系统设计与高并发实践
微服务·架构·生活
重生之我是Java开发战士13 小时前
【Spring Cloud】认识微服务与工程搭建
spring·spring cloud·微服务
MetaLite13 小时前
微服务认证选型-SpringSecurity-SaToken与自研方案
微服务·云原生·架构
梦Arrebol1 天前
Kubernetes 微服务
微服务·容器·kubernetes
源代码•宸1 天前
前置准备:定时微服务背景和现状
开发语言·经验分享·后端·微服务·云原生·架构·golang
码云数智-园园2 天前
我为什么从微服务退回单体架构
微服务·云原生·架构
源代码•宸2 天前
前置准备:定时微服务有什么价值
经验分享·后端·微服务·云原生·架构
μθημα2 天前
Kubernetes 微服务网络实践:Service 与 Ingress 从入门到灰度发布
网络·微服务·kubernetes
池以遇2 天前
云原生——k8s中的微服务
微服务·云原生·kubernetes