dubbo自从诞生就在猿界刮起了一阵旋风,即使后来由于和自家的HSF存在竞争关系下架,官网也关闭,但是好东西,怎能说下架就下架,很多正式的官方说法百度一下一大堆,不介绍了。
我身边的朋友好几个都没有安装成功,我先说一下环境问题,因为dubbo比较老,所以jdk8并不能很好的支持,本人亲测。
先说一下我的环境
jdk:1.7
mvn:3.5
dubbo:2.4
服务器:tomcat7,zookeeper3
首先当然是从官网下载dubbo源码到本地,可以从GitHub下载,不要最新版(最近dubbo更新了一些依赖和一些反馈问题,鄙人感觉并不是很好用)
1. 本机先安装github on Windows的客户端,也可以是GitHub
2. 命令行下 git clone https://github.com/dangdangdotcom/dubbox 把代码拉到本地(官网提供的最新版本地址:https://github.com/alibaba/dubbo/releases)
3. 下载3个zookeeper,创建伪集群,下面再详细介绍伪集群搭建方法。
4.当源码下载完毕后,到项目目录下执行以下命令 mvn install -Dmaven.test.skip=true 跳过测试编译
5.打包成myeclipse工程ps:上面两个地址打包成的mvn工程结构不一样,但是都不影响使用
6.将工程导入到myeclipse
7.到dubbo的dubbo-admin目录下,执行命令mvn package将dubbo-adnin打包
8.执行完打包命令之后,将dubbo-admin下的target拷贝到tomcat的webapps下,并改名为ROOT
9.创建zookeeper伪集群
9.1.下载zookeeper,并拷贝3份
9.2.分别修改3份的配置文件,在zookeeper的conf下,将zoo_sample.cfg复制一份,并重新命名为zoo.cfg,因为zoo_sample.cfg是默认的配置文件
9.3.编辑zoo.cfg,代码如下(啰嗦一下,每个zoo.cfg对应的dataDir和dataLogDir,需要提前建立好,如果是Windows环境,斜杠请看我下的写法)
tickTime=2000 initLimit=10 syncLimit=5 #储存快照文件snapshot的目录 dataDir=D:/zookeeperjava/data1 #server的端口,即对外服务端口 clientPort=2181
#事务日志目录 dataLogDir=D:/zookeeperjava/log1 server.1=127.0.0.1:2287:3387 server.2=127.0.0.1:2288:3388 server.3=127.0.0.1:2289:3389
每个zookeeper的zoo.cfg配置文件dataDir和dataLogDir需要独立创建,不能共享,还是上一张图说明
9.4在每个dataDir下建立一个文件,文件名为myid内容分别为前面zoo.cfg里的server.x的x
server.1=127.0.0.1:2287:3387表示当前为1号机,第一个端口表示数据通信,第二个端口表示Leader选举过程中投票通信。所以这里的server.x一定要与dataDir下的myid里的内容对应
9.5我简单的说一下,就是创建3个不同的dataDir和3个不同的dataLogDir目录,dataDir目录下创建一个文件,文件名为myid,内容为使用当前目录的主机id及server.x的x
10.启动zookeeper伪集群,找到bin下的启动脚本Windows的为zkServer.cmd,Linux的为zkServer.sh
11.启动tomcat,前提是已经将先打包好的dubbo-admin放到tomcat的webapps下,如果先启动tomcat没有启动zookeeper的话,tomcat会一直等待zookeeper的响应
12.好了,基本搞定,访问127.0.0.1:8088,就可以看到dubbo的后台管理界面了,到这里就ok(ps,8080端口被占用改成了8088,后台的账户密码,在WEB-INF/dubbo.properties里修改)
如果还有不太懂得地方,请联系我http://120.76.205.151/Sunne/about/me,感谢陛下阅读和指正。