168大数据

标题: 微服务框架选型(Dubbo 和 Spring Cloud) [打印本页]

作者: 168主编    时间: 2021-2-8 21:09
标题: 微服务框架选型(Dubbo 和 Spring Cloud)
一、概念
       微服务(Microservices)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅关注于完成一件任务并很好地完成该任务。在所有情况下,每个任务代表着一个小的业务能力。
旨在:通过将功能分解到各个离散的服务中以实现对解决方案的解耦。将其看作是在架构层次而非获取服务的,它的主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。
概念:把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。
定义:围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。
本质:用一些功能比较明确、业务比较精练的服务去解决更大、更实际的问题
1、Dubbo 是什么
      Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。简单的说,Dubbo 就是个服务框架,说白了就是个远程服务调用的分布式框架
架构图:
模块注解:
流程详解:
2、Spring Cloud 是什么
      Spring Cloud 基于 Spring Boot,为微服务体系开发中的架构问题,提供了一整套的解决方案——服务注册与发现,服务消费,服务保护与熔断,网关,分布式调用追踪,分布式配置管理等。
重点:
核心功能:
Spring Cloud 组件架构:
流程:
Spring Cloud工具框架
二、Dubbo和Spring Cloud区别
     Dubbo 的功能只是 Spring Cloud 体系的一部分。Dubbo 是 SOA 时代的产物,它的关注点主要在于服务调用,流量分发、流量监控和熔断。而 Spring Cloud 诞生于微服务架构时代,考虑的是微服务治理的方方面面,另外由于依托Spring、Spring Boot 的优势之上,两个框架在开始目标就不一致,Dubbo 定位服务治理、Spring Cloud 是一个生态。
仅关注于服务治理的这个层面,Dubbo 优于 Spring Cloud:
服务调用方式的不同
Dubbo 和 Spring Cloud 对比
三、ZooKeeper 和 Eureka 的区别
      鉴于服务发现对服务化架构的重要性,Dubbo 实践通常以 ZooKeeper 为注册中心(Dubbo 原生支持的 Redis 方案需要服务器时间同步,且性能消耗过大)。针对分布式领域著名的 CAP 理论(C——数据一致性,A——服务可用性,P——服务对网络分区故障的容错性),Zookeeper 保证的是 CP ,但对于服务发现而言,可用性比数据一致性更加重要,AP 胜过 CP,而 Eureka 设计则遵循 AP 原则
Spring Cloud 支持 Consul(CA)和 Zookeeper,但不推荐使用。
参考资料:https://www.cnblogs.com/xishuai/p/dubbo-and-spring-cloud.html







欢迎光临 168大数据 (http://www.bi168.cn/) Powered by Discuz! X3.2