dubbo+zookeeper下生產者和消費者配置(基於springboot開發)

來源:互聯網
上載者:User

標籤:hub   pack   end   author   aik   介面   imp   home   www.   

一.總共分為三個目錄:

  • dubbo-api      服務的介面用於對接用戶端和服務端 
  • dubbo-client     用戶端設定檔為:consumer.xml
  • dubbo-service  服務端設定檔為:provide.xml  

二.設定檔

  1.consumer.xml:   

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"    xsi:schemaLocation="http://www.springframework.org/schema/beans    http://www.springframework.org/schema/beans/spring-beans.xsd    http://code.alibabatech.com/schema/dubbo    http://code.alibabatech.com/schema/dubbo/dubbo.xsd ">    <!-- 消費方應用程式名稱,用於計算依賴關係,不是匹配條件,不要與提供方一樣 -->    <dubbo:application name="consumer" />    <!-- zookeeper作為註冊中心 -->    <dubbo:registry protocol="zookeeper"        address="zookeeper://10.92.1.17:2181" />    <dubbo:protocol name="dubbo" port="20895" />    <!-- 產生遠程服務代理,可以和本地bean一樣使用demoService -->    <dubbo:reference        interface="com.dubbo.api.rpc.TestService" id="testService"></dubbo:reference></beans>

 

  2.provide.xml:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"    xsi:schemaLocation="http://www.springframework.org/schema/beans    http://www.springframework.org/schema/beans/spring-beans.xsd    http://code.alibabatech.com/schema/dubbo    http://code.alibabatech.com/schema/dubbo/dubbo.xsd ">    <!-- 消費方應用程式名稱,用於計算依賴關係,不是匹配條件,不要與提供方一樣 -->    <dubbo:application name="provider" />    <!-- 使用zookeeper作為註冊中心 -->    <dubbo:registry protocol="zookeeper"        address="zookeeper://10.92.1.17:2181" />    <dubbo:protocol name="dubbo" port="20895" />    <!-- 產生遠程服務代理,可以和本地bean一樣使用demoService -->    <dubbo:service interface="com.dubbo.api.rpc.TestService"        ref="testService"></dubbo:service></beans>

  3pom檔案:   

        <dependency>            <groupId>org.springframework.boot</groupId>            <artifactId>spring-boot-starter-web</artifactId>        </dependency>        <dependency>            <groupId>com.dubbo.api</groupId>            <artifactId>dubbo-api</artifactId>             <version>0.0.1-SNAPSHOT</version>        </dependency>        <dependency>            <groupId>com.alibaba</groupId>            <artifactId>dubbo</artifactId>            <version>2.5.3</version>            <exclusions>                <exclusion>                    <groupId>org.springframework</groupId>                    <artifactId>spring</artifactId>                </exclusion>            </exclusions>        </dependency>        <dependency>            <groupId>org.apache.zookeeper</groupId>            <artifactId>zookeeper</artifactId>            <version>3.4.6</version>            <exclusions>                <exclusion>                    <groupId>org.slf4j</groupId>                    <artifactId>slf4j-log4j12</artifactId>                </exclusion>                <exclusion>                    <groupId>log4j</groupId>                    <artifactId>log4j</artifactId>                </exclusion>            </exclusions>        </dependency>        <dependency>            <groupId>com.github.sgroschupf</groupId>            <artifactId>zkclient</artifactId>            <version>0.1</version>        </dependency>

  4. 服務的介面

/**  * @Title: TestService.java  * @Description:   * @author lsc  * @date 2018年8月17日  * @version 1.0  * @Copyright:Copyright Taikanglife.All Rights Reserved  */  package com.dubbo.api.rpc;/**    * @ClassName:  TestService    * @Description: * @author: lsc * @date: 2018年8月17日 上午10:03:28      * @Copyright:Copyright Taikanglife.All Rights Reserved */public interface TestService {        public String sayHello();}

  5.服務的實現

package com.dubbo.dubbo;import org.springframework.stereotype.Service;import com.dubbo.api.rpc.TestService;/** * @ClassName:  TestServiceImpl    * @Description: * @author: lsc * @date: 2018年8月17日 上午10:24:11      * @Copyright:Copyright Taikanglife.All Rights Reserved */@Service("testService")public class TestServiceImpl implements TestService {    @Override    public String sayHello() {        return "hello dubbo";    }}

  6.服務的調用

package com.dubbo.dubboclient;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RestController;import com.dubbo.api.rpc.TestService;/** * @ClassName:  MyController    * @Description: * @author: lsc * @date: 2018年8月17日 上午10:24:56      * @Copyright:Copyright Taikanglife.All Rights Reserved */@RestControllerpublic class MyController {        @Autowired    private TestService testService;     @RequestMapping("/home")    public String home(){        return testService.sayHello();    }}

  

dubbo+zookeeper下生產者和消費者配置(基於springboot開發)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.