SpringCloud速通笔记

本文介绍了Eureka和Nacos两种注册中心的工作原理,包括服务注册、实例选择、健康检查以及与Feign的远程调用。同时,也讨论了Gateway服务网关在权限控制、路由和负载均衡、限流方面的应用。
摘要由CSDN通过智能技术生成

一、Eureka注册中心

1、order-service如何得知user-service实例地址?
  • user-service服务实例启动后,将自己的信息注册到eureka-server(Eureka服务端)。这个叫服务注册

  • eureka-server保存服务名称到服务实例地址列表的映射关系

  • order-service根据服务名称,拉取实例地址列表。这个叫服务发现或服务拉取

2、order-service如何从多个user-service实例中选择具体的实例?
  • order-service从实例列表中利用负载均衡算法选中一个实例地址

  • 向该实例地址发起远程调用

3、order-service如何得知某个user-service实例是否依然健康,是不是已经宕机?
  • user-service会每隔一段时间(默认30秒)向eureka-server发起请求,报告自己状态,称为心跳

  • 当超过一定时间没有发送心跳时,eureka-server会认为微服务实例故障,将该实例从服务列表中剔除

  • order-service拉取服务时,就能将故障实例排除了

二、Nacos注册中心

1、nacos启动

cd进入bin目录,执行startup.cmd -m standalone

2、服务分级存储模型

3、权重配置

如果权重修改为0,则该实例永远不会被访问

4、环境隔离

默认情况下,所有service、data、group都在同一个namespace,名为public

给微服务配置namespace只能通过修改配置来实现。

此时访问order-service,因为namespace不同,会导致找不到userservice,控制台会报错

5、Nacos和Eureka的区别
5.1Nacos与eureka的共同点

都支持服务注册和服务拉取
都支持服务提供者心跳方式做健康检测 


5.2Nacos与Eureka的区别

Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式
临时实例心跳不正常会被剔除,非临时实例则不会被剔除
Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
Nacos集群默认采用AP方式,当集群中存在非临时实例时,采用CP模式;Eureka采用AP方式

三、Feign远程调用

四、Gateway服务网关

1、权限控制:网关作为微服务入口,需要校验用户是是否有请求资格,如果没有则进行拦截。

2、路由和负载均衡:一切请求都必须先经过gateway,但网关不处理业务,而是根据某种规则,把请求转发到某个微服务,这个过程叫做路由。当然路由的目标服务有多个时,还需要做负载均衡。

3、限流:当请求流量过高时,在网关中按照下流的微服务能够接受的速度来放行请求,避免服务压力过大。

  • 6
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Xubx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值