最简的Dubbo例子部署
dubbo 中包含下面4个核心组件: 生产者、消费者、注册中心、监控中心。
简单部署的模块关系
生产者、消费者
最简版本的Dubbo部署只运行Demo Provider和Demo Consumer,它们缺省配置为通过Multicast注册中心广播互相发现。
在这种情况下,建议在不同机器上运行,如果在同一机器上,需设置unicast=false:即:multicast://224.5.6.7:1234?unicast=false,否则发给消费者的单播消息可能被提供者抢占,两个消费者在同一台机器也一样,只有multicast注册中心有此问题。
监控中心
为了更好的看到相关情况,我们需要增加运行Simple Monitor监控中心,它缺省配置为通过Multicast注册中心广播发现Provider和Consumer,并展示出它们的依赖关系,以及它们之间调用的次数和时间。
注册中心
Multicast注册中心不需要单独部署一套应用,注册中心这里也可以将Multicast注册中心换成Zookeeper注册中心,安装Zookeeper Registry后,修改Demo Proivder,Demo Consumer,Simple Monitor三者安装目录下的conf/dubbo.properties,将dubbo.registry.address的值改为zookeeper://127.0.0.1:2181,同理,如果换成Redis Registry,值改为redis://127.0.0.1:6379,如果换成Simple Registry,值改为dubbo://127.0.0.1:9090
注意:multicast地址不能配成127.0.0.1,也不能配成机器的IP地址,必须是D段广播地址,也就是:224.0.0.0到239.255.255.255之间的任意地址
参考: http://dubbo.io/Administrator+Guide-zh.htm
生产者的部署
生产者编译后的部署文件在 github/alibaba/dubbo/dubbo-demo/dubbo-demo-provider/target 目录下的dubbo-demo-provider-2.5.4-SNAPSHOT-assembly.tar.gz 文件。
解压缩这个文件 ,并进入这个目录
tar zxvf dubbo-demo-provider-2.5.4-SNAPSHOT.tar.gz
cd dubbo-demo-provider-2.5.4-SNAPSHOT
配置
vim conf/dubbo.properties
由于是最简方式测试,我们都放在一台机器上,
- 启动 ./bin/start.sh
- 停止 ./bin/stop.sh
- 重启 ./bin/restart.sh
- 调试 ./bin/start.sh debug
- 系统状态: ./bin/dump.sh
- 标准输出: tail -f logs/stdout.log
总控入口
./bin/server.sh start
./bin/server.sh stop
./bin/server.sh restart
./bin/server.sh debug
./bin/server.sh dump
./bin/start.sh
Starting the demo-provider ......OK!
PID: 5683
STDOUT: logs/stdout.log
消费者部署也类似。
修改注册中心地址配置
我们这里例子中,注册中心是用的multicast注册中心,相关的配置为:multicast://224.5.6.7:1234
有关广播注册中心的信息请看这篇博客: http://www.cnblogs.com/ghj1976/p/5276452.html
由于生产者、消费者、监控中心都是部署在一台机器的,我们整个广播是对应的下面这个虚拟网卡进行数据交换的(ifconfig中读取的配置信息):
vnic1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=3<RXCSUM,TXCSUM>
ether 00:1c:42:00:00:09
inet 10.37.129.2 netmask 0xffffff00 broadcast 10.37.129.255
media: autoselect
status: active
服务提供者配置
消费者配置
简单监控中心配置
网络监控
生产者、消费者部署在一台机器, 使用 multicast://224.5.6.7:1234?unicast=false 配置, 通过wireshark的 Loopback 监控如下图:
过滤条件 tcp.port==20880 || tcp.port == 57450
使用这两个端口是因为在dubbo的日志中,打出的就是使用的这两个端口:
Dubbo 简单监控中心
dubbo 自带的监控中心,安装方法类似于生产者的部署, 请参考: http://blog.csdn.net/liwf_/article/details/39053601
我这里安装的是自行编译的 dubbo-monitor-simple-2.5.4-SNAPSHOT
参考资料:
http://dubbo.io/Administrator+Guide-zh.htm
http://dubbo.io/Installation+Tutorial-zh.htm
http://blog.javachen.com/2014/09/24/compile-and-test-dubbo.html
最简的Dubbo例子部署的更多相关文章
- dubbo/dubbox部署资料收集
dubbo/dubbox部署资料收集 最近由于项目需要要部署bubbox,dubbo,在找资料过程中用的的一些网址如下,后来由于取消没有实际应用,以备今后再用 http://dubbo.io/Admi ...
- dubbo 安装部署
dubbo 安装部署 1 安装zookeeper 2 安装dubbo 1 下载源码 https://github.com/alibaba/dubbo 2 编译 mvn clean packa ...
- nginx+tomcat+dubbo单机部署多台dubbo应用
前面的博客已经介绍如何使用nginx+tomcat,今天做的是如何在单台服务器上如何部署多台dubbo 应用的集群. 由于在项目中遇到了这个问题,今天就把它记录下来. 1.
- dubbo项目部署遇到的问题
部署的项目结构如下: [图片] 1 Socket >>>相关的报错 检查下zookeeper的服务端cmd和客户端cmd是否起来了 2 jdbc.DataSourceProperti ...
- springboot+dubbo+tomcat部署出错问题
刚用springboot+dubbo有点不熟悉,部署的时候出现了问题 1 The APR based Apache Tomcat Native library which allows optimal ...
- zookeeper+dubbo简单部署方案
1.zookeeper服务 首先,我们需要下载:zookeeper-3.4.9 解压后,在conf文件夹中添加一个配置文件zoo.cfg,内容如下: tickTime=2000 dataDir=/Us ...
- 简单的可以跑起来的dubbo例子
原文地址:https://blog.csdn.net/jingyangV587/article/details/78901937 项目结构: maven项目,内部三个module. <?xml ...
- spring boot + dubbo 服务部署实例
项目github:https://github.com/nalidou/spring-dubbo 1. 公共组件:dubbo-component 提供了接口定义.实体类等,其他项目可以直接导入jar包 ...
- dubbo 安装部署Windows
1 安装zookeeper 2 安装dubbo 1 下载源码 https://github.com/alibaba/dubbo 2 编译 mvn clean package install -D ...
随机推荐
- unity, 由5.2.1f1升级到5.3.5f1,2d物理不正常解法
由5.2.1f1升级到5.3.5f1,物理不正常. 最后发现问题出在我的游戏中的下面一段代码: Vector2 targetPosition=...; Vector2 targetVeloci ...
- webStorm 注册码 (备用)
webStorm : UserName:William ===== LICENSE BEGIN ===== 45550-12042010 00001SzFN0n1bPII7FnAxnt0DDOPJA ...
- apache使用ssl数字证书
apache配置: <VirtualHost *:443> ServerName web.p2 .com ProxyPreserveHost On ProxyRequests Off SS ...
- R提高篇(三): 数据管理一
目录: 创建新变量 变量重编码 日期值 数据排序 数据集合并 数据子集 随机取样 创建新变量 算术运算函数:x%%y [求余 x mod y, 5%%2的结果为1], x%/%y [整数除法,5% ...
- HTML5跨浏览器表单及HTML5表单的渐进增强
HTML5跨浏览器表单 http://net.tutsplus.com/tutorials/html-css-techniques/how-to-build-cross-browser-html5-f ...
- 【jmeter】Bean shell使用(二)
上一篇Jmeter之Bean shell使用(一)简单介绍了下Jmeter中的Bean shell,本文是对上文的一个补充,主要总结下常用的几种场景和方法,相信这些基本可以涵盖大部分的需求.本节内容如 ...
- 【shell】多命令执行顺序
:举例[root@andon ~]# date;dd if=/dev/zero of=/home/1 bs=1k count=10240;date ##统计dd命令消耗时间,其中/dev/zero为空 ...
- (转)如何在eclipse的配置文件里指定jdk路径
本文转载自:http://songguoliang.iteye.com/blog/1752519 运行eclipse时报如下错误: 在eclipse的配置文件里指定jdk路径,只需在eclipse的配 ...
- php反射机制获取未知类的详细信息
使用ReflectionClass就可以获取未知类的详细信息 demo: require("hello.php"); $class = new ReflectionClass(&q ...
- C#生成二维码示例
其实现在二维码越来越流行,网上也有很多生成二维码的类库.写一下WEB生成二维码注意事项吧! 目前C#生成二维码大部分都是使用ThoughtWorks.QRCode或者ZXing类库生成,主要说一下Th ...