Dubbo入门实例(二)
2015-09-13 09:29
351 查看
Dubbo安装
下载地址:https://github.com/alibaba/dubbo/releasespom.xml:http://files.cnblogs.com/files/belen/pom.xml
Zookeeper(注册中心)
Pom.xml<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.4.6</version>
</dependency>
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。
实例中,zookeeper将作为dubbo服务的注册中心。同时负责集群调度。
为什么要用zookeeper?
Zookeeper可以提供配置管理、命名服务、分布式算法、集群管理功能。具体说明参看如下文章:http://zhidao.baidu.com/question/919262980452730419.html?fr=iks&word=zookeeper+dubbo+%B9%D8%CF%B5&ie=gbk
zookeeper安装
参看下一篇博文:/article/5565323.html
Consumer
目录结构
通过eclipse创建maven项目dubboclient,结构如下:集成Spring
applicationContext.xml:http://files.cnblogs.com/files/belen/applicationContext.xml
调用方式
注入spring后,通过ApplicationContext获取对应服务接口,调用服务方法。Provider
目录结构
通过eclipse创建maven项目dubboserver,结构如下:集成Spring
applicationContext.xml:http://files.cnblogs.com/files/belen/applicationProvider.xml
启动方法
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(new String[] { "applicationProvider.xml" });
context.start();
实例启动顺序
1、 启动zookeeper,参看下一篇博文http://www.cnblogs.com/belen/articles/4804063.html
2、 启动Consumer
是在初始化spring的应用上下文。
3、 客户端调用服务
Dubbo伪集群(单zookeeper)
单机服务器下模拟Dubbo集群,通过多次运行main函数,启动多个服务。本实例将启动三个服务器。为了区分客户端调用的是哪个服务,将服务接口返回值做一些区分:服务1返回hello1 tom
服务2返回hello2 tom
服务3返回hello3 tom
另外三个服务对外暴露的端口也做出调整(spring配置文件):
服务1端口为:2090
服务2端口为:2089
服务3端口为:2088
客户端随机调用服务接口10次,输出如下结果:
将服务1停止运行,客户端随机调用服务接口10次,输出如下结果:
输出结果表明,dubbo集群具有负载均衡和灾备功能(failover)。使用zk实现
Dubbo控制台
上面内容看起来没那么直观。如果有一个控制台来管理和展现就太棒了。不得不说dubbo还是挺贴心的。下载
官网下载地址:http://code.alibabatech.com/mvn/releases/com/alibaba/dubbo-admin/2.4.1/dubbo-admin-2.4.1.war
但是该地址最近一直无法下载。
http://download.csdn.net/detail/liweifengwf/7784901可以通过这里下载。
安装
将war包拷贝到tomcat/webapps目录下,启动tomcat。浏览器中输入:http://localhost:8080/dubbo/
默认用户名和密码:root,root.可以通过/web-inf/dubbo.properties修改用户名和密码。
相关文章推荐
- Scala中隐式参数与隐式转换的联合使用实战详解及其在Spark中的应用源码解析之Scala学习笔记-51
- 收集的Android开源框架及其地址
- 写在开始的话
- 【IOS 开发学习总结-OC-7.3】C 语言特性——动态存储与静态存储
- junit单体测试(PowerMockito)二
- eclipse 搭建struts2框架 出现404错误
- 其中一个案例需求:异常流量
- Zookeeper安装与启动
- Noip 备战篇(一)
- Oracle学习笔记20150913pl/sql编程包的写法
- maven核心,pom.xml详解
- Android 屏幕适配dp,sp
- 机房收费系统总结
- java6
- Android(java)学习笔记238:多媒体之图片画画板案例
- Generate Parentheses
- Python 实现队列
- MySQL的安装图解
- STM32L0 HAL库 IO读写功能
- C++ string 字符串匹配