dubbo 2.5.3 环境搭建

alibaba dubbo基本上已经停止更新了,新用户请使用当当维护的 dubbox, dubbox 在 dubbo 的基础上添加了对 restfull 的支持,升级了 spring。


dubbox 2.8.4 环境搭建

安装Git, JDK 和 Maven

  1. 安装jdk, git

     yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel git
    
  2. 安装maven

     cd /usr/local/src/
     wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
     tar -zxf apache-maven-3.3.9-bin.tar.gz
     mv apache-maven-3.3.9 /usr/local/
     ln -s /usr/local/apache-maven-3.3.9 /usr/local/apache-maven
    
  3. 添加环境变量

     echo >> /root/.bash_profile <<eof
     export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk.x86_64
     export PATH=$JAVA_HOME/bin:$PATH
    
     export M2_HOME=/usr/local/apache-maven/
     export PATH=$PATH:$M2_HOME/bin
     eof
    
  4. 生效环境变量

     . /root/.bash_profile
    
  5. 测试java

     [root@openstack_test ~]# java -version
     openjdk version "1.8.0_101"
     OpenJDK Runtime Environment (build 1.8.0_101-b13)
     OpenJDK 64-Bit Server VM (build 25.101-b13, mixed mode)
    
  6. 测试maven

     [root@openstack_test ~]# mvn -version
     Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
     Maven home: /usr/local/apache-maven
     Java version: 1.8.0_101, vendor: Oracle Corporation
     Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.101-3.b13.el6_8.x86_64/jre
     Default locale: en_US, platform encoding: UTF-8
     OS name: "linux", version: "2.6.32-573.18.1.el6.x86_64", arch: "amd64", family: "unix"
    

编译dubbo

  1. 安装opensesame

     cd /usr/local/src/
     git clone https://github.com/alibaba/opensesame.git
     cd opensesame/
     mvn clean install -Dmaven.test.skip
    
  2. 获取dubbo源码

     cd /usr/local/src/
     git clone https://github.com/alibaba/dubbo.git dubbo
     cd /usr/local/src/dubbo
     cp -r hessian-lite/ ../
     git checkout dubbo-2.5.3
     cp -r ../hessian-lite/ ./
    
  3. 修改pom.xml

     <modules>
         <module>hessian-lite</module>   <!-- 添加hessian-lite -->
         <module>dubbo-common</module>
         <module>dubbo-container</module>
         <module>dubbo-remoting</module>
         .........
     </modules>
    
     <properties>
         .........
         <fastjson_version>1.1.39</fastjson_version>   <!-- 修改版本为 1.1.39 -->
         .........
     </properties>
    
  4. 修改 hessian-lite/pom.xml

     <parent>
         <groupId>com.alibaba</groupId>
         <artifactId>dubbo-parent</artifactId>
         <version>2.5.3</version>   <!-- 修改版本为2.5.3 -->
     </parent>
    
  5. 修改 dubbo-admin/pom.xml

    webx的依赖改为3.1.6版;

     <dependency>
         <groupId>com.alibaba.citrus</groupId>
         <artifactId>citrus-webx-all</artifactId>
         <version>3.1.6</version>
     </dependency>
    

    添加velocity的依赖

     <dependency>
         <groupId>org.apache.velocity</groupId>
         <artifactId>velocity</artifactId>
         <version>1.7</version>
     </dependency>
    

    对依赖项dubbo添加exclusion,避免引入旧spring

     <dependency>
         <groupId>com.alibaba</groupId>
         <artifactId>dubbo</artifactId>
         <version>${project.parent.version}</version>
         <exclusions>
             <exclusion>
                 <groupId>org.springframework</groupId>
                 <artifactId>spring</artifactId>
             </exclusion>
         </exclusions>
     </dependency>
    

    webx已有spring 3以上的依赖,因此注释掉dubbo-admin里面的spring依赖

     <!--<dependency>-->
         <!--<groupId>org.springframework</groupId>-->
         <!--<artifactId>spring</artifactId>-->
     <!--</dependency>-->
    
  6. 编译

     mvn clean install -Dmaven.test.skip
    

安装ZooKeeper

  1. 安装zookeeper

     cd /usr/local/src
     wget http://apache.fayea.com/zookeeper/zookeeper-3.4.8/zookeeper-3.4.8.tar.gz
     tar -zxf zookeeper-3.4.8.tar.gz
     cp -r zookeeper-3.4.8 /usr/local/
     ln -s /usr/local/zookeeper-3.4.8/ /usr/local/zookeeper
    
  2. 修改配置

     cd /usr/local/zookeeper/
     cp conf/zoo_sample.cfg conf/zoo.cfg
    
     echo > conf/zoo.cfg <<eof
     tickTime=2000
     initLimit=10
     syncLimit=5
     dataDir=/var/lib/zookeeper  # 修改ZooKeeper快照存储路径
     clientPort=2181
     eof
    
  3. 启动&测试

    启动 server 端

         bin/zkServer.sh start
    

    启动客户端,尝试创建、查询节点

         bin/zkCli.sh -server localhost:2181
    
    
         [zk: localhost:2181(CONNECTED) 3] create /test 1111
         Created /test
         [zk: localhost:2181(CONNECTED) 4] get /test
         1111
         cZxid = 0x2
         ctime = Thu Sep 01 08:59:24 CST 2016
         mZxid = 0x2
         mtime = Thu Sep 01 08:59:24 CST 2016
         pZxid = 0x2
         cversion = 0
         dataVersion = 0
         aclVersion = 0
         ephemeralOwner = 0x0
         dataLength = 4
         numChildren = 0
    

安装dubbo-admin

  1. 安装tomcat

    yum install tomcat6

  2. 部署 dubbo-admin 代码

     mkdir /var/lib/tomcat6/webapps/ROOT/
     unzip dubbo-admin/target/dubbo-admin-2.5.3.war -d /var/lib/tomcat6/webapps/ROOT/
    

    确认/var/lib/tomcat6/webapps/ROOT/WEB-INF/dubbo.properties 中ZooKeeper的地址是否正确。本例中,该配置无需修改。 然后就可以启动tomcat了。

     /etc/init.d/tomcat6 restart
    

    可以通过浏览器访问 dubbo-admin。

启动demon

provider

cd /usr/local/src/dubbo/dubbo-demo/dubbo-demo-provider/target/
tar -zxf dubbo-demo-provider-2.5.3-assembly.tar.gz
cd dubbo-demo-provider-2.5.3

修改 conf/dubbo.properties

#dubbo.registry.address=multicast://224.5.6.7:1234
dubbo.registry.address=zookeeper://127.0.0.1:2181

启动provider

bin/start.sh

consumer

cd /usr/local/src/dubbo/dubbo-demo/dubbo-demo-consumer/target/
tar -zxf dubbo-demo-consumer-2.5.3-assembly.tar.gz
cd dubbo-demo-consumer-2.5.3

修改 conf/dubbo.properties

#dubbo.registry.address=multicast://224.5.6.7:1234
dubbo.registry.address=zookeeper://127.0.0.1:2181

启动consumer

bin/start.sh

确认

consumer log

在consumer的日志中可以看到provider的正常回应。

dubbo-admin

在dubbo-admin的 服务治理>>服务 页面也可以看到consumer和provider注册的服务,说明服务正常启动。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,723评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,080评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,604评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,440评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,431评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,499评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,893评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,541评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,751评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,547评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,619评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,320评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,890评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,896评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,137评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,796评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,335评论 2 342

推荐阅读更多精彩内容