spring cloud微服务常用组件

组件介绍

  • Nacos ​:在微服务架构中,每个服务可能是集群部署在多台服务器上,并且由于扩容或者是迁移IP是动态变化的,这样不方便管理,也不便于微服务间的通信。因此需要有一个独立的中心平台,对所有的微服务进行统一管理。nacos便是充当这个角色的,提供服务注册发现 ,让服务找到彼此;集中管理配置,使动态调整无需重启。

  • OpenFeign ​:微服务之间的通信中同步方案通常通过RESTful风格的HTTP API实现。而传统方式使用RestTemplate 这种编程式实现需要自己拼接请求路径比较麻烦,而OpenFeign可以理解为是一种更高阶抽象的声明式的服务调用RPC框架 ,提高了开发效率的同时还提升了系统的可维护性。无缝集成spring-cloud-starter-loadbalancer实现负载均衡

  • Sentinel ​:微服务之间相互依赖,一个服务的不可用(如处理缓慢或者异常)可能沿着调用链蔓延,导致整个系统崩溃。sentinel以流量 为切入点,实现流量控制熔断降级系统保护,保障服务的稳定性和高可用。

  • Gateway ​:微服务架构下,应用被拆分为数十甚至上百个服务。如果让客户端直接面对这么多细粒度的服务,会存在认证、鉴权、日志、流量控制等公共逻辑重复实现 、难以管理的问题。需要一个统一的流量入口,作为所有请求的"门卫"和"路由",统一处理非业务功能。

  • Seata ​:在单体应用拆分为微服务后,一个业务操作需要跨多个服务、多个数据库。此时,单个数据库的ACID事务无法保障业务数据的全局一致性。需要一个外部的组件来协调多个本地事务,要么全部成功,要么全部回滚,这就是分布式事务问题,Seata就是为此而生。

相关推荐
oMcLin1 小时前
如何在 Ubuntu 22.10 上通过 Kubernetes 和 Helm 管理微服务应用,简化跨平台电商平台的自动化部署?
ubuntu·微服务·kubernetes
仙俊红1 小时前
spring的IoC(控制反转)面试题
java·后端·spring
阿湯哥1 小时前
AgentScope Java 集成 Spring AI Alibaba Workflow 完整指南
java·人工智能·spring
廋到被风吹走1 小时前
【Spring】Spring Cloud 熔断降级深度解析:从 Hystrix 到 Resilience4j 的演进
spring·spring cloud·hystrix
fenglllle2 小时前
spring-data-jpa saveall慢的原因
数据库·spring·hibernate
czlczl200209252 小时前
Guava Cache 原理与实战
java·后端·spring
阿湯哥5 小时前
Spring AI Alibaba 实现 Workflow 全指南
java·人工智能·spring
萧曵 丶7 小时前
Spring Cloud Alibaba 详解
spring·spring cloud
szm02258 小时前
Spring
java·后端·spring
qq_318121599 小时前
互联网大厂Java面试故事:支付与金融服务微服务架构、消息队列与AI风控全流程解析
java·spring boot·redis·微服务·kafka·支付系统·金融服务