分布式系统环境搭建(dubbo + zookeeper)
1、准备工作
①下载dubbo源码并编译、直到成功
git clone https://github.com/apache/incubator-dubbo.git
mvn clean package
②下载zookeeper源码并编译、直到成功
git clone https://github.com/apache/zookeeper.git
ant eclipse
③下载dubbo-ops并编译、直到成功
git clone https://github.com/apache/incubator-dubbo-ops.git
mvn clean package
2、分布式系统逻辑架构(摘自官网)
3、环境搭建
注意:zookeeper、dubbo、dubbo-admin都是以源码方式编译的
1、以zookeeper做为注册中心,在IDEA中找到ZookeeperServerMain类,启动参数中指定zookeeper配置文件位置后启动(此处zoo.cfg中仅修改了dataDir的值)
2、启动zkCli查看zk节点信息
命令行中执行
① zkCli(需要将zookeeper路径设置到环境变量中)
② ls /
初始状态只有一个zookeeper节点
3、修改dubbo-demo-provider、dubbo-demo-consumer 中配置文件中的dubbo:registry配置
demo中默认协议是multicast,因注册中心采用zookeeper,所以改为zookeeper的配置方式。
4、启动provider并使用zkCli观察zk有何改变
可以发现多了个dubbo节点。依次执行下列命令:
各个节点的值:
5、启动consumer,再次观察zk变化,此处略。
6、启动monitor,命令如下
java -jar dubbo-admin-0.0.1-SNAPSHOT.jar
访问:http://localhost:7001 可以看到管理界面,初始账密:root:root。
总结:窃以为dubbo实际上解决了一个问题,在分布式系统上的方法调用如何做到和单机程序调用方法一样。