当前位置: 首页 > news >正文

Spring Cloud微服务

目录

  • 1. 服务注册与发现
  • 2. 服务调用与负载均衡
  • 3. 服务网关
  • 4. 配置文件
  • 5. 断路器
  • 6. 链路追踪
  • SpringCloud工作流程:

1. 服务注册与发现

作用:让服务实例自动注册到注册中心,并动态发现可用服务。

  • Eureka(Netflix):传统注册中心,服务端与客户端模式,已停止更新。
  • Consul(HashiCorp):基于 Raft 算法,支持多数据中心,提供健康检查。
  • Nacos(阿里巴巴):阿里开源的注册中心与配置中心,支持动态服务发现、配置管理和流量管理。

Nacos服务需要下载。

在springboot项目中需要配置配置依赖nacos和loadbalancer

2. 服务调用与负载均衡

作用:实现微服务之间的远程调用,并均衡分配请求流量。

  • Ribbon:需要手动构建 HTTP 请求
  • FeignClient:在Ribbon上优化,不需要手动构建 HTTP 请求
@FeignClient("user-service") // 调用名为user-service的服务,这样不用手写httpRequest请求,简化代理逻辑
public interface UserService {@GetMapping("/users/{id}")User getById(@PathVariable Long id);
}

3. 服务网关

作用:作为系统入口,根据路由地址转发、负载均衡、权限校验、流量控制等。

  • Zuul(Netflix):传统网关,基于 Servlet,已停止维护。
  • Spring Cloud Gateway:新一代网关,基于 WebFlux,性能更高,支持动态路由和谓词匹配。

4. 配置文件

作用:集中管理微服务配置,支持动态更新。

  1. 将Nacos服务器中微服务配置文件import导入yml文件。
  2. 添加RefreshScope 注解实现动态刷新。

5. 断路器

作用:防止服务雪崩,当目标服务不可用时快速熔断,避免级联故障。

6. 链路追踪

作用:追踪分布式系统中请求的完整路径,定位性能瓶颈。

SpringCloud工作流程:

  1. 服务注册:微服务启动时向注册中心(如 Nacos)注册 IP 和端口。
  2. 服务发现:调用方通过注册中心获取可用服务列表。
  3. 请求路由:客户端通过 Feign+Ribbon 调用服务,或通过 Gateway 转发请求。
  4. 负载均衡:Ribbon 从服务列表中选择实例,均衡分配流量。
  5. 熔断保护:Resilience4j 监控服务健康状态,异常时触发熔断。
  6. 配置更新:配置中心推送更新,服务通过 RefreshScope 动态刷新配置。
http://www.lqws.cn/news/494443.html

相关文章:

  • MM-AttacKG:一种使用大型语言模型构建攻击图的多模态方法
  • GitLab 17.8 备份秘籍:快速获取纯 Git 仓库与核心配置
  • 兆瓦闪充技术革命:解码新能源汽车补能赛道的技术跃迁与从业机会图谱
  • 60天python训练计划----day56
  • 左神算法之二叉树的个数
  • 数据标注师学习内容
  • Domain 层完全指南(面向 iOS 开发者)
  • 【数据结构初阶】--顺序表(一)
  • FPGA基础 -- Verilog 验证平台
  • 《哈希表》K倍区间(解题报告)
  • 论文略读:ASurvey on Intent-aware Recommender Systems
  • 13-MCP4725-带 EEPROM 存储器的 12 位数模转换器
  • DeepSeek中的提示库及其用法示例
  • AI编程再突破,文心快码发布行业首个多模态、多智能体协同AI IDE
  • leetcode543-二叉树的直径
  • Flink SQL执行流程深度剖析:从SQL语句到分布式执行
  • 【Linux学习笔记】进程间通信之共享内存
  • Kimi“新PPT助手” ,Kimi全新自研的免费AI生成PPT助手
  • 金融行业B端系统布局实战:风险管控与数据可视化的定制方案
  • 深入理解PHP中的面向对象编程
  • 电脑的虚拟内存对性能影响大吗
  • FPGA基础 -- Verilog 竞争/竞态(Race Condition)
  • ubuntu安装postman教程并中文汉化详细教程
  • Anaconda虚拟环境
  • flutter TabBar左边间隔问题
  • 【android bluetooth 框架分析 04】【bt-framework 层详解 8】【DeviceProperties介绍】
  • Java数据结构第二十四期:探秘 AVL 树,当二叉搜索树学会 “自我调节”
  • 2025再升级:医疗数智立体化体系V2.0架构简介
  • 布瑞琳BRANEW:高端洗护领航者,铸就品质生活新典范
  • 以产教协同推进老年生活照护实训室虚拟仿真建设策略