当前位置: 首页 > news >正文

获取dubbo源码编译并导入idea以及启动入门项目dubbo-demo

一直想研究下dubbo,然后就动手开始干啦。。
首先说一下dubbo说明文档的一些坑,按照文档部署不一定能部署起来,不过它是一个基本的参考,建议部署dubbo是参考dubbox的部署说明。很神奇。
1、下载zookeeper并部署
下载地址
http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.10/
下载后解压并编辑conf/zoo.cfg文件
这是我的文件内容

# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial 
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between 
# sending a request and getting an acknowledgement
syncLimit=5
# the directory where the snapshot is stored.
# do not use /tmp for storage, /tmp here is just 
# example sakes.
dataDir=D:\zookeeper\data
dataLogDir=D:\zookeeper\log
# the port at which the clients will connect
clientPort=2181
# the maximum number of client connections.
# increase this if you need to handle more clients
#maxClientCnxns=60
#
# Be sure to read the maintenance section of the 
# administrator guide before turning on autopurge.
#
# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
#
# The number of snapshots to retain in dataDir
#autopurge.snapRetainCount=3
# Purge task interval in hours
# Set to "0" to disable auto purge feature
#autopurge.purgeInterval=1

然后启动bin/zkServer.cmd启动zookeeper服务。
这里写图片描述
2、获取dubbo源码
话说阿里又开始更新dbuuo(官网地址http://dubbo.apache.org)了,
GitHub源码地址:
控制中心:[ https://github.com/apache/incubator-dubbo-ops ]
dubbo项目地址:[ https://github.com/apache/incubator-dubbo ]
在你的workspace中打开git客户端,然后开始下载项目
输入命令

git clone https://github.com/apache/incubator-dubbo.git

等待下载完,然后输入

cd incubator-dubbo

然后输入

mvn install -Dmaven.test.skip=true

然后再输入

mvn idea:idea  或 mvn eclipse:eclipse  (根据自己使用的开发工具而言进行选择)

然后再进行控制中心项目进行编译,也是输入命令

git clone https://github.com/apache/incubator-dubbo-ops.git

等待下载完,然后输入

cd incubator-dubbo

然后输入

mvn install -Dmaven.test.skip=true

然后再输入

mvn idea:idea  或 mvn eclipse:eclipse  (根据自己使用的开发工具而言进行选择)

至此,项目已经编译好了,然后可以打开idea并导入相关项目如下图:
这里写图片描述
dubbo-demo项目分为三个主要模块,分别是dubbo-demo-api、dubbo-demo-consumer、dubbo-demo-provider。这里需要修改连个地方
dubbo-demo-consumer下的dubbo-demo-consumer.xml就是把订阅中心改为zookeeper,端口自定义
这里写图片描述

 <dubbo:registry address="zookeeper://localhost:2181"/>

然后启动Consumer类 (直接右键运行main方法即可)
dubbo-demo-provider下的dubbo-demo-provider.xml中的配置修改为zookeeper发布
这里写图片描述

<dubbo:registry address="zookeeper://localhost:2181"/>

主要作用可以参考http://dubbo.apache.org 有详细描述。
这里写图片描述
然后启动Provider类 (直接右键运行main方法即可)
这里写图片描述
这里写图片描述
控制中心项目最主要的就是dubbo-admin了,它是一个web你可以在idea里发布它到Tomcat或者用target下编译好的jar直接部署到Tomcat。
然后访问http://localhost:8080 输入用户名:root 密码:root 或 用户名:guest 密码:guest即可
这里写图片描述

参考:
https://xuliugen.gitbooks.io/javaweb-1/31-dubbo%E7%AE%80%E4%BB%8B.html
http://dubbo.apache.org/books/dubbo-user-book/preface/usage.html
http://dubbo.apache.org/books/dubbo-admin-book/install/admin-console.html

相关文章:

  • Yii2 创建定时任务
  • 【中间件】MQ(作用、组成、复制和刷盘策略、幂等、堆积与延迟、死信队列)面试题
  • 【线性表,队列和栈,栈溢出,链表和顺序表的特点】
  • 获取JVM 进程 PID
  • 实现Callable接口实现线程创建及线程注意事项包括线程状态,一些API
  • 2023年湖北安全员ABC报名条件、报名流程、报名需要什么资料呢?甘建二
  • 液位检测仪在线监测系统解决方案
  • Argo rollouts + istio服务网格实现金丝雀灰度发布
  • 摸鱼三天,我写了一个通用的组建树TreeUtil工具
  • 【Telegraf 介绍】
  • 【React】类excel表格的开源项目handsontable
  • 2022前端面试—js+vue篇(持续更新)
  • MySQL数据库管理(二)
  • 【我的世界Minecraft-MC】常见及各种指令大杂烩【2022.8版】
  • mpls详解
  • [分享]iOS开发 - 实现UITableView Plain SectionView和table不停留一起滑动
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 【mysql】环境安装、服务启动、密码设置
  • bearychat的java client
  • CSS实用技巧
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • JDK 6和JDK 7中的substring()方法
  • js ES6 求数组的交集,并集,还有差集
  • Js基础知识(一) - 变量
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Linux下的乱码问题
  • nodejs:开发并发布一个nodejs包
  • Objective-C 中关联引用的概念
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • spring boot下thymeleaf全局静态变量配置
  • Vue.js 移动端适配之 vw 解决方案
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 给第三方使用接口的 URL 签名实现
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 技术:超级实用的电脑小技巧
  • 理解在java “”i=i++;”所发生的事情
  • 聊聊directory traversal attack
  • 我的面试准备过程--容器(更新中)
  • 我有几个粽子,和一个故事
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 正则与JS中的正则
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • ionic异常记录
  • 关于Kubernetes Dashboard漏洞CVE-2018-18264的修复公告
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • $分析了六十多年间100万字的政府工作报告,我看到了这样的变迁
  • (1) caustics\
  • (9)STL算法之逆转旋转
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (JS基础)String 类型
  • (poj1.2.1)1970(筛选法模拟)