<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
    主站蜘蛛池模板: 亚洲精品无码久久久久| 精品免费久久久久国产一区| 亚洲AV无码专区亚洲AV伊甸园| 尤物永久免费AV无码网站| 亚洲日本在线免费观看| 热99RE久久精品这里都是精品免费| 精品久久久久久久久亚洲偷窥女厕| 亚洲熟妇av一区| 亚洲AV福利天堂一区二区三| 亚洲国产精品第一区二区三区| 成年女人毛片免费播放视频m| 777成影片免费观看| 免费无码作爱视频| 三上悠亚在线观看免费| 污视频网站在线观看免费| 久久亚洲精品无码网站| 中文有码亚洲制服av片| 亚洲国产情侣一区二区三区| 亚洲综合一区二区国产精品| 国产成人精品日本亚洲| 亚洲免费人成在线视频观看| 亚洲女人被黑人巨大进入| 亚洲国产精品视频| 亚洲国产成人五月综合网 | 国产极品粉嫩泬免费观看| 在线观看av永久免费| 国产一卡二卡四卡免费| 麻豆视频免费播放| 精品免费久久久久久久| 91精品免费观看| 亚洲成人免费网址| 国产成人精品免费视频大| 毛片免费全部播放无码| 日韩在线播放全免费| 大学生一级毛片免费看| 中文字幕无码成人免费视频| 成人特黄a级毛片免费视频| 成人午夜大片免费7777| 日韩免费福利视频| 亚洲第一页综合图片自拍| 中文字幕在亚洲第一在线|