参考资料:https://segmentfault.com/a/1190000009568509
https://segmentfault.com/a/1190000004654903

0. 环境

Java: jdk1.8.0_144

OS: Windows 10(宿主机192.168.1.105)/Ubuntu 15.10(虚拟机192.168.1.21)

Tomcat: apache-tomcat-7.0.68

1. 下载zookeeper部署到虚拟机

  • 下载:`wget http://www.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz`
  • 解压:`tar -zxvf zookeeper-3.4.9.tar.gz`
  • 配置zookeeper:`mv /usr/zookeeper-3.4.9/conf/zoo_sample.cfg /usr/zookeeper-3.4.9/conf/zoo.cfg`
  • 启动:在/usr/zookeeper-3.4.9/bin目录下执行`./zkServer.sh start`

2. 下载dubbo源码后打包dubbo-admin并部署到虚拟机

  • git下载dubbo源码:https://github.com/alibaba/dubbo/tree/dubbo-2.5.5
  • 修改dubbo-admin/src/main/webapp/WEB-INF/dubbo.properties文件的注册地址:dubbo.registry.address=zookeeper://192.168.1.21:2181
  • 打包生成war文件并部署到虚拟机(注意:需要隐藏项目名,否则内部跳转易出错)
  • 启动tomcat后访问http://192.168.1.21:8080/,用户名密码:root

3. 创建项目并完成配置

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd ">
<dubbo:application name="dubbo-demo-provider" />
<!-- zookeeper注册中心 -->
<dubbo:registry address="zookeeper://192.168.1.21:2181" />
<dubbo:protocol name="dubbo" port="20880" /> <!-- 和本地bean一样实现服务 -->
<bean id="demoService1" class="org.lxp.dubbo.service.DemoServiceImpl" />
<bean id="demoService2" class="org.lxp.dubbo.service.DemoServiceImpl2" /> <!-- 向注册中心注册暴漏服务地址,注册服务 -->
<dubbo:service interface="org.lxp.dubbo.service.DemoService" ref="demoService1" executes="10" version="1.0.1" />
<dubbo:service interface="org.lxp.dubbo.service.DemoService" ref="demoService2" executes="10" version="1.0.2" /> </beans>
  • 消费服务与zookeeper的连接配置applicationConsumer.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://code.alibabatech.com/schema/dubbo http://code.alibabatech.com/schema/dubbo/dubbo.xsd">
<dubbo:application name="dubbo-demo-consumer" /> <dubbo:registry address="zookeeper://192.168.1.21:2181" /> <!-- 向注册中心订阅服务 -->
<dubbo:reference id="demoService1" interface="org.lxp.dubbo.service.DemoService" version="1.0.1" />
<dubbo:reference id="demoService2" interface="org.lxp.dubbo.service.DemoService" version="1.0.2" />
</beans>

4. 启动发布服务

  • 运行dubbo-demo-provider模块BootStrap类的main方法

  • 服务已注册成功,见http://192.168.1.21:8080/governance/services

5. 启动消费服务并测试

  • tomcat7-maven-plugin插件运行dubbo-demo-consumer应用成功后,可以见到消费者已注册

  • 访问http://192.168.1.105:8080/dubbo-consumer/swagger-ui.html可测试API

基于dubbo2.5.5+zookeeper3.4.9的服务搭建的更多相关文章

  1. 基于netty轻量的高性能分布式RPC服务框架forest<下篇>

    基于netty轻量的高性能分布式RPC服务框架forest<上篇> 文章已经简单介绍了forest的快速入门,本文旨在介绍forest用户指南. 基本介绍 Forest是一套基于java开 ...

  2. 基于netty轻量的高性能分布式RPC服务框架forest<上篇>

    工作几年,用过不不少RPC框架,也算是读过一些RPC源码.之前也撸过几次RPC框架,但是不断的被自己否定,最近终于又撸了一个,希望能够不断迭代出自己喜欢的样子. 顺便也记录一下撸RPC的过程,一来作为 ...

  3. 基于Spring Cloud和Netflix OSS构建微服务,Part 2

    在上一篇文章中,我们已使用Spring Cloud和Netflix OSS中的核心组件,如Eureka.Ribbon和Zuul,部分实现了操作模型(operations model),允许单独部署的微 ...

  4. 基于HAProxy+Keepalived高可用负载均衡web服务的搭建

    一 原理简介 1.HAProxyHAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web ...

  5. 基于Axis1.4的webservice接口开发(环境搭建)

    基于Axis1.4的webservice接口开发(环境搭建) 一.环境搭建: 1.搜索关键字“Axis1.4”下载Axis1.4相关的jar包. 下载地址:http://download.csdn.n ...

  6. 基于RHCS的web双机热备集群搭建

    基于RHCS的web双机热备集群搭建 RHCS集群执行原理及功能介绍 1. 分布式集群管理器(CMAN)  Cluster Manager.简称CMAN.是一个分布式集群管理工具.它执行在集群的各个节 ...

  7. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四

    openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...

  8. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 三

    openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...

  9. openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 二

    openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...

随机推荐

  1. CodeForces 599A Patrick and Shopping

    水题.每种情况取最小值即可. #include<cstdio> #include<cstring> #include<cmath> #include<algo ...

  2. Fedora20 安装 MySQL

    参考资料: http://www.cnblogs.com/focusj/archive/2011/05/09/2057573.html http://linux.chinaunix.net/techd ...

  3. mybatisplus代码生成器

    一.随便建一个springboot工程,在pom文件中导入依赖 <!-- 模板引擎 --> <dependency> <groupId>org.apache.vel ...

  4. FlashFXP绿色版

    http://www.xdowns.com/soft/1/98/2006/Soft_30927.html

  5. Codeforces Round #258 (Div. 2) B. Sort the Array(简单题)

    题目链接:http://codeforces.com/contest/451/problem/B --------------------------------------------------- ...

  6. Cocostudio 1.4 实现的DemoShop

    开发环境是CocoStudio 1.4 + Cocos2dx 2.2  把项目文件放到Cocos2dx下的projects文件夹下就可以执行了 压缩包里面包括了 源码 和资源文件 执行效果: 初始化界 ...

  7. vue 定义全局函数

    方法一:main.js 注入 (1)在main.js中写入函数 Vue.prototype.changeData = function (){ alert('执行成功'); } (2)在所有组件里可调 ...

  8. iOS用户体验之-modal上下文

    iOS用户体验之-modal上下文 何为模态视图,它的作用时聚焦当前.获得用户的注意,用户仅仅有完毕模态的任务才 退出模态视图.否则你将不能运行app的任务,比如,alert view,model v ...

  9. MySQL Study之--MySQL用户及权限管理

    MySQL Study之--MySQL用户及权限管理     MySQLserver通过MySQL权限表来控制用户对数据库的訪问.MySQL权限表存放在mysql数据库里.由mysql_install ...

  10. JSON序列化-化繁为简

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...