<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    皮杜妮

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      887 Posts :: 3 Stories :: 7 Comments :: 0 Trackbacks

    dubbo是阿里巴巴的框架,主要有4部分組成,1 服務(wù)臺提供方, 2 服務(wù)注冊方 3 服務(wù)消費(fèi)分 4 監(jiān)控部分

    1. 注冊方一般用zookeeper, 先下載安裝,啟動zkservece.cmd 會報(bào)錯(cuò),需要修改配置文件 zoo.cfg. 路徑中conf/下,,沒有自己加一個(gè)。
    正常啟動

    2. 編寫一個(gè)服務(wù)器端, 創(chuàng)建maven項(xiàng)目

    pom.xml文件

    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>DubboService</groupId>
      <artifactId>DubboService</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <build/>
              <dependencies>
                <dependency>
                    <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                    <version>3.8.1</version>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                    <version>1.1.1</version>
                </dependency>
                <dependency>
                    <groupId>com.alibaba</groupId>
                    <artifactId>dubbo</artifactId>
                    <version>2.5.3</version>
                </dependency>
                <dependency>
                    <groupId>org.javassist</groupId>
                    <artifactId>javassist</artifactId>
                    <version>3.18.1-GA</version>
                </dependency>
                <dependency>
                    <groupId>log4j</groupId>
                    <artifactId>log4j</artifactId>
                    <version>1.2.15</version>
                    <exclusions>
                        <exclusion>
                            <groupId>com.sun.jdmk</groupId>
                            <artifactId>jmxtools</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jmx</groupId>
                            <artifactId>jmxri</artifactId>
                        </exclusion>
                        <exclusion>
                            <artifactId>jms</artifactId>
                            <groupId>javax.jms</groupId>
                        </exclusion>
                        <exclusion>
                            <artifactId>mail</artifactId>
                            <groupId>javax.mail</groupId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring</artifactId>
                    <version>2.5.6.SEC03</version>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                    <version>1.7.6</version>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                    <version>1.6.1</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.zookeeper</groupId>
                    <artifactId>zookeeper</artifactId>
                    <version>3.4.5</version>
                    <type>pom</type>
                </dependency>
                <dependency>
                    <groupId>com.101tec</groupId>
                    <artifactId>zkclient</artifactId>
                    <version>0.4</version>
                </dependency>
            </dependencies>
          <repositories>
            <repository>
                <id>spring-snapshots</id>
                <url>http://repo.spring.io/libs-snapshot</url>
            </repository>
        </repositories>   
        
    </project>

    config/applicationProvider.xml  配置文件,里面定義了注冊的bean, 和zookeeper的地址
    <?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="hello-world" />
        <!-- 注冊地址 -->
         <dubbo:registry address="zookeeper://localhost:2181" />
         <dubbo:protocol name="dubbo" port="20880" />
            <!-- Service interface Concurrent Control -->
            <dubbo:service interface="cn.zto.service.IProcessData"    ref="demoService" executes="10" />
            <!-- designate implementation -->
            <bean id="demoService" class="cn.zto.service.impl.ProcessDataImpl" />
        </beans>
    IProcessData定義接口及實(shí)現(xiàn)類
    package cn.zto.service.impl;

    import cn.zto.service.IProcessData;
    public class ProcessDataImpl implements IProcessData {
    public String hello(String name) {
        System.out.println(name);
        return "hello : " + name;
    }}

    package cn.zto.service;

    public interface IProcessData {
        public String hello(String name);
    }
    啟動服務(wù)
    package cn.zto.app;

    import org.springframework.context.support.ClassPathXmlApplicationContext;
    public class Main {
    public static void main(String[] args) throws Exception {
         ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext(    new String[] {
    "config/applicationProvider.xml"
    });
    context.start();
    System.out.println("按任意鍵退出");
    System.in.read();
    }}
    運(yùn)行起來。如下
    log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
    log4j:WARN Please initialize the log4j system properly.
    按任意鍵退出



    下面再建一個(gè)client程序
    pom.xml
    <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>DubboClient</groupId>
      <artifactId>DubboClient</artifactId>
      <version>0.0.1-SNAPSHOT</version>
      <build/>
     
              <dependencies>
                <dependency>
                    <groupId>junit</groupId>
                    <artifactId>junit</artifactId>
                    <version>3.8.1</version>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>commons-logging</groupId>
                    <artifactId>commons-logging</artifactId>
                    <version>1.1.1</version>
                </dependency>
                <dependency>
                    <groupId>com.alibaba</groupId>
                    <artifactId>dubbo</artifactId>
                    <version>2.5.3</version>
                </dependency>
                <dependency>
                    <groupId>org.javassist</groupId>
                    <artifactId>javassist</artifactId>
                    <version>3.18.1-GA</version>
                </dependency>
                <dependency>
                    <groupId>log4j</groupId>
                    <artifactId>log4j</artifactId>
                    <version>1.2.15</version>
                    <exclusions>
                        <exclusion>
                            <groupId>com.sun.jdmk</groupId>
                            <artifactId>jmxtools</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jmx</groupId>
                            <artifactId>jmxri</artifactId>
                        </exclusion>
                        <exclusion>
                            <artifactId>jms</artifactId>
                            <groupId>javax.jms</groupId>
                        </exclusion>
                        <exclusion>
                            <artifactId>mail</artifactId>
                            <groupId>javax.mail</groupId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>spring</artifactId>
                    <version>2.5.6.SEC03</version>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-api</artifactId>
                    <version>1.7.6</version>
                </dependency>
                <dependency>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-log4j12</artifactId>
                    <version>1.6.1</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.zookeeper</groupId>
                    <artifactId>zookeeper</artifactId>
                    <version>3.4.5</version>
                    <type>pom</type>
                </dependency>
                <dependency>
                    <groupId>com.101tec</groupId>
                    <artifactId>zkclient</artifactId>
                    <version>0.4</version>
                </dependency>
            </dependencies>
     
     
          <repositories>
            <repository>
                <id>spring-snapshots</id>
                <url>http://repo.spring.io/libs-snapshot</url>
            </repository>
        </repositories>   
        
    </project>


    注冊的接口類,和要服務(wù)器端的包路徑一致

    package cn.zto.service;

    public interface IProcessData {
        public String hello(String name);
    }

    客戶端的配置文件,接口定義及zookeeper的地址
    <?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-of-helloworld-app" />
        <!-- 注冊地址 -->
         <dubbo:registry address="zookeeper://localhost:2181"/>
         <dubbo:consumer timeout="5000" />
         <dubbo:reference id="demoService" interface="cn.zto.service.IProcessData"/>
    </beans>

    客戶端啟動
    package cn.zto.consumer;
    import org.springframework.context.support.ClassPathXmlApplicationContext;

    import cn.zto.service.IProcessData;

    public class ConsumerThd{
        
        
        
    public void sayHello(){
    ClassPathXmlApplicationContext context=new ClassPathXmlApplicationContext(    
    new String[] {"config/applicationProvider.xml"});
    context.start();
    IProcessData demoService=(IProcessData) context.getBean("demoService");
    System.out.println(demoService.hello("world"));
    }


    public static void main(String args[]){
        new ConsumerThd().sayHello();
    }



    }


    運(yùn)行結(jié)果如下

    log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
    log4j:WARN Please initialize the log4j system properly.
    hello : world


    這樣就基本實(shí)現(xiàn)了dubbo的框架,很簡單吧




    posted on 2016-05-04 17:03 豬眼睛 閱讀(209) 評論(0)  編輯  收藏 所屬分類: Spring
    主站蜘蛛池模板: 亚洲精品亚洲人成在线| a毛看片免费观看视频| 国产亚洲精品国产福利在线观看 | 亚洲国产精品人久久电影| www亚洲精品久久久乳| 日韩精品久久久久久免费| 免费国产精品视频| 91午夜精品亚洲一区二区三区| 在线播放免费人成视频网站| 国色精品卡一卡2卡3卡4卡免费| 亚洲中文字幕久久精品无码APP| 亚洲人成网站18禁止| 毛片大全免费观看| 亚洲高清在线mv| 国产在线精品免费aaa片| 亚洲国产一区视频| 亚洲hairy多毛pics大全| 免费视频专区一国产盗摄| 亚洲日韩国产欧美一区二区三区 | 日韩在线视频播放免费视频完整版 | 精品亚洲成a人片在线观看少妇| 一区二区三区精品高清视频免费在线播放| 国产又黄又爽又刺激的免费网址 | 在线精品一卡乱码免费| 久久亚洲精品无码| 国产成人高清精品免费观看| 国产一级淫片视频免费看| 男人天堂2018亚洲男人天堂| 曰批全过程免费视频播放网站| 久久精品国产亚洲av四虎| 中国在线观看免费的www| 亚洲国产专区一区| 暖暖免费日本在线中文| 亚洲av日韩av无码| 四虎成人免费网址在线| 亚洲乱色熟女一区二区三区蜜臀| 五月天婷亚洲天综合网精品偷| 国产综合激情在线亚洲第一页| 亚洲综合熟女久久久30p| 午夜性色一区二区三区免费不卡视频 | 日韩精品成人亚洲专区|