`
y806839048
  • 浏览: 1107629 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

dubbo 解决既是消费者又是提供者 Duplicate application configs 的问题

阅读更多

首先  有应用A  是 提供者

应用B 来实现既是消费者又是提供者

在应用 这边新建两个xml 

dubbo-consumer.xml  消费者

 

注意:

服务方用什么协议。在哪个端口暴露服务

消费方用什么协议获取服务。在哪个端口暴露自己的服务

》》

既是消费方又是服务方,协议名获取服务,端口上暴露服务---服务方获取服务只跟协议有关,端口是用来自身暴露服务的

 

 

<dubbo:protocol name="协议名" port="端口" />

从这个配置就可以说明dubbo,本身就是可以服务提供者(指定了暴露端口),服务消费者(制定了获取服务协议)

 

复制代码
    <!-- 自动扫描注解:通过dubbo实现 -->
    <dubbo:annotation package="test.dubbo.*" />
    <!-- 必须加上:提供方应用服务端的名称 -->
    <dubbo:application name="person-client" />
    
    <!-- 服务端需要把dubbo服务注册到zookeeper上进行广播 -->
    <dubbo:registry address="zookeeper://127.0.0.1:2181" />
   <!-- 用dubbo协议在20881端口服务 -->
    <dubbo:protocol name="dubbo" port="20881" />
<!-- 注册需要使用的dubbo服务,通过interface指定服务接口 --> <dubbo:reference id="personInfoService" interface="test.dubbo.itf.IpersonInfoService" timeout="10000" check="false" />
复制代码

 

dubbo-provider.xml  提供者

复制代码
    <!-- 自动扫描注解:通过dubbo实现 -->
    <dubbo:annotation package="test.dubbo.*" />
    <!-- 必须加上:提供方应用服务端的名称 -->
    <dubbo:application name="person-center" />

    <!-- 服务端需要把dubbo服务注册到zookeeper上进行广播 -->
    <dubbo:registry address="zookeeper://127.0.0.1:2181" />

    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880" />

    <!-- 服务端声明需要对外开放提供服务的接口 -->
    <dubbo:service interface="test.dubbo.itf.IpersonInfoService"
        protocol="dubbo" ref="personInfoService" />
复制代码

 

 

启动之后会报错: Duplicate application configs: <dubbo:application name="person-client" id="person-client" /> and <dubbo:application name="person-center" id="person-center" />

重复的应用程序的配置 

解决办法是把其中一个xml中的配置文件删除,留一个就好了

比如删除 dubbo-provider.xml 里面的

复制代码
<!-- 自动扫描注解:通过dubbo实现 -->
    <dubbo:annotation package="test.dubbo.*" />
    <!-- 必须加上:提供方应用服务端的名称 -->
    <dubbo:application name="person-center" />

    <!-- 服务端需要把dubbo服务注册到zookeeper上进行广播 -->
    <dubbo:registry address="zookeeper://127.0.0.1:2181" />

    <!-- 用dubbo协议在20880端口暴露服务 -->
    <dubbo:protocol name="dubbo" port="20880" />
复制代码

 

修改后的 xml文件

dubbo-consumer.xml  消费者

 

复制代码
    <!-- 自动扫描注解:通过dubbo实现 -->
    <dubbo:annotation package="test.dubbo.*" />
    <!-- 必须加上:提供方应用服务端的名称 -->
    <dubbo:application name="person-client" />
    
    <!-- 服务端需要把dubbo服务注册到zookeeper上进行广播 -->
    <dubbo:registry address="zookeeper://127.0.0.1:2181" />
   <!-- 用dubbo协议在20881端口服务 -->
    <dubbo:protocol name="dubbo" port="20881" />
<!-- 注册需要使用的dubbo服务,通过interface指定服务接口 --> <dubbo:reference id="personInfoService" interface="test.dubbo.itf.IpersonInfoService" timeout="10000" check="false" />
复制代码

 

 

dubbo-provider.xml  提供者

    <!-- 服务端声明需要对外开放提供服务的接口 -->
    <dubbo:service interface="test.dubbo.itf.IpersonInfoService"
        protocol="dubbo" ref="personInfoService" />

 

原因是一个应用不能有重复的应用程序配置,去掉一个相同的配置就可以了。

这样就可以实现 dubbo 既是提供者又是消费者了。

分享到:
评论

相关推荐

    基于注解、SpringBoot的Dubbo提供者消费者DEMO

    本教程将详细探讨如何基于注解和SpringBoot构建一个简单的Dubbo提供者与消费者DEMO,让你能够快速理解和实践这一技术。 首先,我们来理解"注解"在编程中的作用。注解(Annotation)是Java提供的一种元数据,它为...

    dubbo提供者消费者jar包

    总的来说,dubbo2.4版本提供者provider消费者consumer jar包是一个包含完整功能的Dubbo服务治理解决方案,能够帮助开发者构建高性能、高可用的分布式系统。通过深入理解和灵活运用其中的组件,我们可以构建出更强大...

    dubbo提供者消费者例子

    本示例将深入讲解Dubbo提供者和消费者的典型应用场景,以帮助理解Dubbo在实际编码中的应用。 首先,我们来看“provider”目录,这通常包含了服务提供者的相关代码。在Dubbo中,服务提供者是对外提供服务的一方,它...

    dubbo实现的消费者,提供者的demo

    这个名为"Dubbo实现的消费者,提供者的demo"的项目,旨在通过实例演示如何使用Dubbo来创建服务消费者和服务提供者,并将它们进行模块化的拆分。下面,我们将深入探讨这些关键知识点。 1. **Dubbo架构核心组件**: ...

    dubbo提供者和消费者工程

    《Dubbo提供者与消费者工程详解》 Dubbo,作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,已经成为Java世界中分布式服务的重要组件。在理解Dubbo的核心概念时,我们通常会接触到“提供者”和“消费者”这两...

    dubbo提供者和消费者例子

    本示例将深入讲解 Dubbo 的提供者(Provider)与消费者(Consumer)的概念及其工作原理。 首先,我们要了解在 Dubbo 中的核心角色——服务提供者(Provider)和服务消费者(Consumer)。服务提供者是拥有服务的实体...

    Dubbo服务提供者以及消费者实例

    在这个实例中,我们将深入理解Dubbo服务提供者和服务消费者的运作模式。 首先,我们来探讨服务提供者(Provider)。在Dubbo中,服务提供者是指实现了某些功能并愿意对外提供服务的组件。服务提供者需要完成以下关键...

    dubbo例子(注册中心,消费者,提供者)

    4. **Dubbo配置**:在项目中,Dubbo的配置通常包括服务接口定义、服务提供者配置和服务消费者配置。例如,Provider需要配置服务的接口、实现类、注册中心地址等;Consumer则需配置要调用的服务名、注册中心地址等。...

    springboot融合dubbo 提供者消费者 协议api

    springboot融合dubbo 提供者消费者 协议api,provider 使用他提供服务,consumer使用他调用服务,实现代码 参考:https://download.csdn.net/download/itexplorersfather/10346699

    dubbo-zookeeper springSpringMVC 一个生产者,多消费者 例子

    1.dubbo-zookeeper springSpringMVC 一个生产者,多消费者 例子 2. ssm-dubbo 源码 ssm-tomcat 里放的是 warbao ,程序包 zookeeper-3.4.9 zookeeper 免安装包 设置都是默认的 zookeeper 端口 2181 dubbo-...

    dubbo生产者消费者使用demo

    《Dubbo生产者消费者使用Demo详解》 Dubbo,作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,已经成为Java世界中分布式服务的重要选择。本文将深入解析如何在实际项目中运用Dubbo,通过一个简单的生产者消费...

    dubbo消费者的web应用实例

    Dubbo的核心组件包括服务提供者(Provider)、服务消费者(Consumer)、注册中心(Registry)和服务监控(Monitor)。 二、Java Web基础 Java Web应用程序是运行在服务器端的程序,通常用于构建动态网站。它基于...

    Dubbo+Dubbo生产者,Dubbo消费者+Dubbo消费者调用生产者的服务的小demo

    本项目案例“妻子”作为消费者去调用生产者(“丈夫”)的服务--洗碗 本项目需要注意 @DubboReference private HusbandService husbandService; @EnableDubbo @DubboService 这几个注解不能忘,否则会报错,或者...

    dubbo 服务提供者

    在部署Dubbo服务提供者之前,需要先安装并运行Zookeeper集群,因为Dubbo服务会注册到Zookeeper上,消费者通过Zookeeper获取服务提供者的地址信息,实现服务的透明调用。这意味着服务提供者配置中需包含Zookeeper的...

    Java实现dubbo消息提供者及消费者

    本教程将深入探讨如何在Java环境中实现Dubbo的消息提供者(服务提供者)和消费者(服务消费者),以及这两个组件在实际应用中的工作原理。 首先,我们要理解Dubbo的核心概念:服务提供者和服务消费者。服务提供者是...

    Dubbo生产者消费者示例源代码(基于Eclipse的Maven项目)

    Dubbo生产者消费者示例源代码,Eclipse项目,基于Maven构建,可以直接导入Eclipse开发环境,本人亲测,编译通过,可以直接在Eclipse中运行(包含Main方法),先运行提供者,再运行生产者。

    Dubbo搭建HelloWorld-创建服务提供者与消费者示例代码

    在本教程中,我们将深入探讨如何使用Apache Dubbo构建一个简单的"Hello, World"应用程序,该程序包括服务提供者和服务消费者。Dubbo是一款高性能、轻量级的Java RPC框架,它能够帮助开发者实现分布式服务之间的通信...

    dubbo-provider-consumer生产者消费者实例

    Dubbo 的消费者支持动态配置,这意味着消费者可以在运行时根据服务提供者的列表动态选择调用哪个服务,甚至支持负载均衡策略,如轮询、随机、优先级等。 在实例中,我们通常会分为以下几个步骤来实现生产者和消费者...

    dubbo服务和消费

    本项目基于Maven构建,涵盖了服务提供者(Provider)和服务消费者(Consumer)两个核心组件,旨在为开发者提供一个完整的测试环境,以深入理解Dubbo的工作原理和实践应用。 首先,我们要明确的是,Dubbo的核心概念...

    springboot+dubbo+zookeeper实现多个生产者、消费者的负载均衡

    在本项目中,我们主要探讨的是如何利用SpringBoot、Dubbo和Zookeeper来构建一个具有多个生产者和消费者的分布式服务系统,并实现负载均衡。以下是详细的知识点解释: 1. **SpringBoot**: SpringBoot是Spring框架...

Global site tag (gtag.js) - Google Analytics