SpringCloud深入理解 | 生产者、消费者

简介: SpringCloud深入理解 | 生产者、消费者



SpringCloud

Spring Cloud是一组用于构建分布式系统和微服务架构的开源框架和工具集合。它是在Spring生态系统的基础上构建的,旨在简化开发人员构建分布式系统和微服务应用程序的过程

SpringCloud生态

  • Spring Cloud NetFlix

Spring Cloud Netflix是Spring Cloud生态系统中的一个组件,它提供了与Netflix开源项目集成的功能

  • Apache Dubbo Zookeeper

Apache Dubbo是一种高性能的Java RPC(远程过程调用)框架,它提供了分布式服务治理的解决方案。Dubbo支持多种注册中心,其中包括Zookeeper

  • Spring Cloud Alibaba

Spring Cloud Alibaba提供了一套完整的解决方案,帮助开发人员构建基于阿里巴巴生态系统的微服务应用程序,实现服务注册与发现、流量控制、分布式事务等功能

SpringCloud版本

生产者(Producer)

生产者是指提供某种服务的微服务应用程序;将自己的服务注册到服务注册中心,使其他应用程序可以发现和调用它提供的服务;生产者通常会定义一组API接口,用于描述其提供的服务功能和参数;当有其他应用程序需要使用该服务时,可以通过服务注册中心找到该生产者,并使用API接口进行调用

消费者(Consumer)

消费者是指需要使用其他微服务提供的服务的应用程序;消费者通过服务注册中心查找并发现生产者的服务,并使用API接口进行调用;消费者不需要关心服务的具体实现细节,只需要知道如何调用API接口来使用服务;消费者可以根据自己的需求选择合适的生产者进行调用,并可以通过负载均衡等机制实现对多个生产者的调用和分配

Eureka服务注册与发现

Eureka是Netflix开源的一种服务注册与发现框架,也是Spring Cloud中常用的组件之一,提供服务注册和发现的功能,使得微服务应用程序可以方便地注册自己的服务并发现其他服务

ACID

ACID是指银行级一致性的协议,其全称为Atomicity(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)它是一个数据库事务在执行时需要满足的四个属性;如果一个事务在执行过程中发生了错误,比如发生了一个错误导致事务无法执行完成,那么需要回滚到事务开始前的状态,以保证数据的一致性

CAP

CAP是指在一个分布式系统中,数据的一致性通常被划分为三种类型:一致性(所有节点在同一时间读写数据)、可用性(所有节点可以读写数据,但是可能存在读到旧数据的情况)和分区容忍性(系统可以在节点发生故障的情况下继续运行)。CAP是一种数据一致性的理论,它强调了分布式系统中可能存在的限制和约束

Ribbon

"Ribbon"通常是指Netflix Ribbon,它是一个用于实现客户端负载均衡的开源Java库。Ribbon主要用于在微服务架构中进行客户端负载均衡和容错处理


🌼 结语:创作不易,如果觉得博主的文章赏心悦目,还请——点赞👍收藏⭐️评论📝


目录
相关文章
|
24天前
|
负载均衡 Java 开发者
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
深入探索Spring Cloud与Spring Boot:构建微服务架构的实践经验
78 5
|
2月前
|
负载均衡 Java API
【Spring Cloud生态】Spring Cloud Gateway基本配置
【Spring Cloud生态】Spring Cloud Gateway基本配置
62 0
|
4月前
|
Java Spring
【Azure Spring Cloud】Spring Cloud Azure 4.0 调用Key Vault遇见认证错误 AADSTS90002: Tenant not found.
【Azure Spring Cloud】Spring Cloud Azure 4.0 调用Key Vault遇见认证错误 AADSTS90002: Tenant not found.
|
4月前
|
Java Spring 容器
【Azure Spring Cloud】在Azure Spring Apps上看见 App Memory Usage 和 jvm.menory.use 的指标的疑问及OOM
【Azure Spring Cloud】在Azure Spring Apps上看见 App Memory Usage 和 jvm.menory.use 的指标的疑问及OOM
|
4月前
|
存储 Java Spring
【Azure Spring Cloud】Azure Spring Cloud服务,如何获取应用程序日志文件呢?
【Azure Spring Cloud】Azure Spring Cloud服务,如何获取应用程序日志文件呢?
|
4月前
|
SQL Java 数据库连接
【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
|
4月前
|
Java 开发工具 Spring
【Azure Spring Cloud】使用azure-spring-boot-starter-storage来上传文件报错: java.net.UnknownHostException: xxxxxxxx.blob.core.windows.net: Name or service not known
【Azure Spring Cloud】使用azure-spring-boot-starter-storage来上传文件报错: java.net.UnknownHostException: xxxxxxxx.blob.core.windows.net: Name or service not known
|
4月前
|
NoSQL Java Redis
【Azure Spring Cloud】Java Spring Cloud 应用部署到Azure上后,发现大量的 java.lang.NullPointerException: null at io.lettuce.core.protocol.CommandHandler.writeSingleCommand(CommandHandler.java:426) at ... 异常
【Azure Spring Cloud】Java Spring Cloud 应用部署到Azure上后,发现大量的 java.lang.NullPointerException: null at io.lettuce.core.protocol.CommandHandler.writeSingleCommand(CommandHandler.java:426) at ... 异常
|
4月前
|
Java Spring
【Azure 应用服务】记一次Azure Spring Cloud 的部署错误 (az spring-cloud app deploy -g dev -s testdemo -n demo -p ./hellospring-0.0.1-SNAPSHOT.jar --->>> Failed to wait for deployment instances to be ready)
【Azure 应用服务】记一次Azure Spring Cloud 的部署错误 (az spring-cloud app deploy -g dev -s testdemo -n demo -p ./hellospring-0.0.1-SNAPSHOT.jar --->>> Failed to wait for deployment instances to be ready)
|
4月前
|
Java Maven Python
【Azure Spring Cloud】部署Azure spring cloud 失败
【Azure Spring Cloud】部署Azure spring cloud 失败