SpringCloud01-初识微服务&SpringCloud

一、微服务技术栈一览

模块 关键内容 详细知识点
微服务治理 服务注册与调用、配置管理、网关 Eureka、Nacos、OpenFeign、Gateway、配置中心 Nacos
Docker 容器化与部署 Docker 原理、Docker 使用、Dockerfile、Docker Compose
异步通信 系统解耦、削峰 同步/异步、MQ 技术模型、Spring AMQP、消费者限流
分布式搜索 大数据搜索引擎 DSL 语法、HighLevelClient、拼音搜索、自动补全、竞价排序、地理搜索、聚合统计、分片集群
模块 关键内容 详细知识点
微服务保护 系统稳定性保障 流量控制、系统保护、熔断降级、服务授权
分布式事务 数据一致性保障 XA 模式、TCC 模式、AT 模式、Saga 模式
分布式缓存 高性能缓存架构 数据持久化、Redis 主从集群、哨兵机制、Redis 分片集群
多级缓存 缓存加速方案 多级缓存分层、Nginx 缓存、Redis 缓存、Canal 数据同步
可靠消息服务 消息不丢失、不重复、不积压 消息三方确认、惰性队列、延迟队列、镜像集群、仲裁队列
模块 关键内容 详细知识点
Nacos 源码 服务注册与发现机制 服务发现原理、服务注册原理、心跳机制、Nacos vs Eureka
Sentinel 源码 流控/熔断算法原理 滑动窗口算法、令牌桶算法、漏桶算法
Redis 热点问题 高并发缓存安全 分布式锁、缓存穿透、缓存击穿、缓存雪崩

二、认识微服务

2-1、单体架构

2-2、分布式架构

目前,解决以上为题的方案:微服务。

2-3、小结

微服务,就是分布式架构的最佳实践方案。

三、主流的微服务技术

3-1、每个组件是什么?

服务网关

所有外部用户访问系统,要先经过它。

就像 公司前台

  • 用户不会直接接触内部服务

  • 网关会根据请求分配任务到具体服务

  • 还能做 权限检查、限流、防攻击

关键词:统一入口、过滤、转发、保护系统


服务集群

系统拆成很多服务,并且每个服务可能会启动多个实例。

就像有很多工人团队:

  • 用户服务(处理登录、信息)

  • 订单服务(负责下单)

  • 库存服务(减少库存)

  • 支付服务(处理付款)

而且每个服务都有多台机器 → 防止崩掉、支持高并发

这叫 集群

关键词:多实例、负载均衡、扩容


注册中心

每个服务启动时,必须来这里登记「我是谁,我在哪」

其他服务通过它找到彼此。

就像 公司通讯录/员工电话本

服务 地址 是否可用
用户服务 192.168.1.10:8080 在线
支付服务 192.168.1.11:9000 在线

代表技术:Eureka、Nacos、Consul


配置中心

用来统一管理配置,不要让每个服务自己保存配置文件。

就像 公司制度手册

  • 数据库账号、密码

  • 日志配置

  • 开关控制(比如开启活动模式)

只需改一个地方,所有服务都能自动更新,不用逐个修改。

代表技术:Nacos Config、Apollo、Spring Cloud Config

3-2、微服务技术对比

3-3、企业需求

四、初识SpringCloud

4-1、SpringCloud 与 SpringBoot

SpringBoot 专注于一个服务怎么写得简单好用;

SpringCloud 专注于很多服务之间怎么协同工作。

4-2、版本兼容关系

SpringCloud 依赖 SpringBoot,版本要匹配才能正常使用。不能乱搭配。

如果你是初学者:

推荐:SpringBoot 2.6.13 + SpringCloud 2021.0.5(稳定好用,教程多)。

如果你用 JDK17:

选择:SpringBoot 3.x + SpringCloud 2022.x(最新技术栈)。

相关推荐
追风筝的人er5 天前
企业管理系统如何实现自定义首页与千人千面?RuoYi Office 给出了完整方案
vue.js·spring boot·spring cloud
三水不滴5 天前
利用SpringCloud Gateway 重试 + 降级解决第三方接口频繁超时问题,提升性能
经验分享·笔记·后端·spring·spring cloud·gateway
知识即是力量ol6 天前
微服务架构:从入门到进阶完全指南
java·spring cloud·微服务·nacos·架构·gateway·feign
Java水解6 天前
【Spring Cloud】优雅实现远程调用-OpenFeign
后端·spring cloud
Remember_9936 天前
SpringCloud:Nacos注册中心
java·开发语言·后端·算法·spring·spring cloud·list
J_liaty6 天前
Spring Cloud 微服务面试高频题
spring cloud·微服务·面试
西门吹雪分身6 天前
SpringCloudGateway过滤器之RequestRateLimiterGatewayFilterFactory
java·redis·spring cloud
vx_Biye_Design6 天前
【关注可免费领取源码】云计算及其应用网络教学系统--毕设附源码35183
java·spring·spring cloud·servlet·eclipse·云计算·课程设计
Coder_Boy_7 天前
Java后端核心技术体系全解析(个人总结)
java·开发语言·spring boot·分布式·spring cloud·中间件
悠闲蜗牛�7 天前
Kubernetes从零到集群:本地Minikube环境搭建与Spring Cloud微服务运维实战
spring cloud·微服务·kubernetes