当前位置 : 主页 > 编程语言 > java >

Dubbo常见问题及解决方案

来源:互联网 收集:自由互联 发布时间:2022-07-13
1、Dubbo是什么? Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC 分布式服务框架,现已成为 Apache 基金会孵化项目。 官网:http://dubbo.apache.org 2、为什么要用Dubbo? Dubbo是阿里开源项目,国


1、Dubbo是什么?

Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC 分布式服务框架,现已成为 Apache 基金会孵化项目。

官网:http://dubbo.apache.org

2、为什么要用Dubbo?

  • Dubbo是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。
  • 使用 Dubbo 可以将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,可用于提高业务复用灵活扩展,使前端应用能更快速的响应多变的市场需求。
  • 分布式架构可以承受更大规模的并发流量。
  • Dubbo常见问题及解决方案_多协议


    Dubbo常见问题及解决方案_负载均衡_02

    3、Dubbo 和 Spring Cloud 有什么区别?

    两个没关联,如果硬要说区别,有以下几点。

  • 通信方式不同
  • Dubbo 使用的是 RPC 通信,而 Spring Cloud 使用的是 HTTP RESTFul 方式。

  • 组成部分不同
  • Dubbo常见问题及解决方案_spring_03

    4、dubbo都支持什么协议,推荐用哪种?

    dubbo://(推荐)

    rmi://

    hessian://

    http://

    webservice://

    thrift://

    memcached://

    redis://

    rest://

    5、Dubbo需要 Web 容器吗?

    不需要,如果硬要用 Web 容器,只会增加复杂性,也浪费资源。

    6、Dubbo内置了哪几种服务容器?

    Spring Container

    Jetty Container

    Log4j Container

    Dubbo 的服务容器只是一个简单的 Main 方法,并加载一个简单的 Spring 容器,用于暴露服务。

    7、Dubbo里面有哪几种节点角色?

    Dubbo常见问题及解决方案_多协议_04

    8、画一画服务注册与发现的流程图

    Dubbo常见问题及解决方案_多协议_05

    9、Dubbo默认使用什么注册中心,还有别的选择吗?

    推荐使用 Zookeeper 作为注册中心,还有 Redis、Multicast、Simple 注册中心,但不推荐。

    10、Dubbo有哪几种配置方式?

  • Spring 配置方式
  • Java API 配置方式
  • 11、Dubbo 核心的配置有哪些?

    Dubbo常见问题及解决方案_spring_06

    16、Dubbo有哪几种集群容错方案,默认是哪种?

    Dubbo常见问题及解决方案_spring_07

    17、Dubbo有哪几种负载均衡策略,默认是哪种?

    Dubbo常见问题及解决方案_多协议_08

    18、注册了多个同一样的服务,如果测试指定的某一个服务呢?

    可以配置环境点对点直连,绕过注册中心,将以服务接口为单位,忽略注册中心的提供者列表。

    19、Dubbo支持服务多协议吗?

    Dubbo 允许配置多协议,在不同服务上支持不同协议或者同一服务上同时支持多种协议。

    20、当一个服务接口有多种实现时怎么做?

    当一个接口有多种实现时,可以用 group 属性来分组,服务提供方和消费方都指定同一个 group 即可。

    21、Dubbo的管理控制台能做什么?

    管理控制台主要包含:路由规则,动态配置,服务降级,访问控制,权重调整,负载均衡,等管理功能。

    22、说说 Dubbo 服务暴露的过程。

    Dubbo 会在 Spring 实例化完 bean 之后,在刷新容器最后一步发布 ContextRefreshEvent 事件的时候,通知实现了 ApplicationListener 的 ServiceBean 类进行回调 onApplicationEvent 事件方法,Dubbo 会在这个方法中调用 ServiceBean 父类 ServiceConfig 的 export 方法,而该方法真正实现了服务的(异步或者非异步)发布。


    上一篇:InetAddress的使用
    下一篇:没有了
    网友评论