谷粒商城学习笔记-20-分布式组件-SpringCloud Alibaba简介

news/2024/12/22 0:47:07/

文章目录

  • 一,微服务组件来源介绍
  • 二,SpringCloud Alibaba简介
    • 1,简介
    • 2,SpringCloud 的几大痛点
    • 3,SpringCloud Alibaba 的优势,
  • 三,谷粒商城项目选型列表
    • 1,注册中心-Nacos
    • 2,配置中心-Nacos
    • 3,负载均衡-Ribbon
    • 4,远程调用-OpenFeign
    • 5,限流降级熔断-Sentinel
    • 6,网关-Gateway
    • 7,链路追踪-Sleuth
    • 8,分布式事务-Seata

本节主要介绍了项目选用的微服务SpringCloud组件。

一,微服务组件来源介绍

组件主要来自两个机构,一个是Spring官方,一个是阿里巴巴开源的组件。之所以使用阿里开源的组件,主要生Spring官方对某些组件停止维护,而阿里开源组件中有青出于蓝而胜于蓝的组件可供选用。

  • Spring官方组件列表

在这里插入图片描述

  • Spring阿里巴巴组件列表

在这里插入图片描述

Spring官方已经宣布停止维护的Spring Cloud组件包括以下几项:

  1. Spring Cloud Sleuth

    • 分布式追踪系统,用于收集和分析微服务架构下的请求链路数据。Sleuth的核心功能已经转移到Micrometer Tracing项目。
  2. Spring Cloud Cloudfoundry

    • 针对Cloudfoundry PaaS平台的集成组件,已经停止维护。
  3. Ribbon

    • 客户端负载均衡器,用于实现客户端的负载均衡调用。Spring官方表示Ribbon进入维护模式,意味着只有关键的bug修复和安全问题会被解决,没有新的功能开发。
  4. Hystrix

    • 断路器组件,用于实现服务间的容错和隔离,防止级联故障。Hystrix也停止了维护,Spring官方推荐使用Resilience4j作为替代。
  5. Spring Cloud Config

    • 虽然不完全停止维护,但Spring Cloud Config的使用被标记为“不推荐”,建议使用如Apollo或Nacos等替代方案。
  6. Eureka

    • 服务发现与注册组件,虽然Eureka本身并没有完全停止维护,但在某些情况下,Spring官方推荐使用其他服务发现组件,如Consul或Zookeeper,以及Spring Cloud Netflix的替代品。

对这些停止维护或者更新组件,建议考虑使用替代方案或更新的组件以获得更好的支持和功能。

二,SpringCloud Alibaba简介

1,简介

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

依托Spring Cloud Alibaba,只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系统。

2,SpringCloud 的几大痛点

  • SpringCloud 部分组件停止维护和更新,给开发带来不便;
  • SpringCloud 部分环境搭建复杂,没有完善的可视化界面,我们需要大量的二次开发和定制
  • SpringCloud 配置复杂,难以上手,部分配置差别难以区分和合理应用

3,SpringCloud Alibaba 的优势,

阿里使用过的组件经历了考验,性能强悍,设计合理,现在开源出来大家用成套的产品搭配完善的可视化界面给开发运维带来极大的便利搭建简单,学习曲线低。

三,谷粒商城项目选型列表

1,注册中心-Nacos

SpringCloud Alibaba - Nacos:注册中心(服务发现/注册)

2,配置中心-Nacos

SpringCloud Alibaba - Nacos:配置中心(动态配置管理)

3,负载均衡-Ribbon

SpringCloud - Ribbon:负载均衡

4,远程调用-OpenFeign

SpringCloud - OpenFeign:声明式 HTTP 客户端(调用远程服务)

5,限流降级熔断-Sentinel

SpringCloud Alibaba - Sentinel:服务容错(限流、降级、熔断)

6,网关-Gateway

SpringCloud - Gateway:API 网关(webflux 编程模式)

7,链路追踪-Sleuth

SpringCloud - Sleuth:调用链监控

8,分布式事务-Seata

SpringCloud Alibaba - Seata:原 Fescar,即分布式事务解决方案


http://www.ppmy.cn/news/1474155.html

相关文章

如何实现跨域

目录 JSONP (JSON with Padding) CORS (Cross-Origin Resource Sharing) Nginx代理 Node.js中间件代理 Vue axios实现(或其他前端HTTP库) 原生JS、jQuery Ajax等其他方式 跨域实现是Web开发中常见的需求,主要涉及到不同源(协议、域名、端口三者之一不同即为不同源)之…

NXP i.MX8系列平台开发讲解 - 3.18 Linux tty子系统介绍(一)

专栏文章目录传送门:返回专栏目录 Hi, 我是你们的老朋友,主要专注于嵌入式软件开发,有兴趣不要忘记点击关注【码思途远】 目录 1. TTY 起源 2. Linux 系统中的TTY 2.1 Linux TTY 设备形式 2.2 Linux TTY framework 2.3 驱动核心相关文件…

206. 反转链表 (Swift 版本)

题目 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 解题 /*** Definition for singly-linked list.* public class ListNode {* public var val: Int* public var next: ListNode?* public init() { self.val 0; self.…

沙龙回顾|MongoDB如何充当企业开发加速器?

数据不仅是企业发展转型的驱动力,也是开发者最棘手的问题。前日,MongoDB携手阿里云、NineData在杭州成功举办了“数据驱动,敏捷前行——MongoDB企业开发加速器”技术沙龙。此次活动吸引了来自各行各业的专业人员,共同探讨MongoDB的…

鸿蒙开发:Universal Keystore Kit(密钥管理服务)【加密导入密钥(C/C++)】

加密导入密钥(C/C) 以加密导入ECDH密钥对为例,涉及业务侧加密密钥的[密钥生成]、[协商]等操作不在本示例中体现。 具体的场景介绍及支持的算法规格。 在CMake脚本中链接相关动态库 target_link_libraries(entry PUBLIC libhuks_ndk.z.so)开发步骤 设备A&#xf…

C# AOP面向切面编程

AOP(Aspect-Oriented Programming,面向切面编程)是一种编程范式,旨在将横切关注点(Cross-cutting Concerns)从业务逻辑中分离出来。在传统的面向对象编程中,横切关注点(如日志记录、…

elasticsearch-users和elasticsearch-reset-password介绍

elasticsearch 内置 elastic, kibana, logstash_system,beats_system 共4个用户,用途如下: elastic 账号:内置的超级用户,拥有 superuser 角色。 kibana 账号:用来连接 elasticsearch 并与之通信。Kibana 服务器以该用…

在网站存在漏洞的情况下强化安全防御

一、引言 网络安全是一个持续的战斗,尤其是在网站存在已知或未知漏洞的情况下。本文将探讨如何在网站存在漏洞的情况下,采取有效措施进行安全防御。 二、理解漏洞 首先,我们需要理解网站的漏洞。这些可能包括SQL注入、跨站脚本&#xff08…