基于dubbo2.5.5+zookeeper3.4.9的服务搭建
参考资料: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. 创建项目并完成配置
- 完成发布和消费服务的编码,见https://github.com/hivsuper/demos/tree/master/dubbo-demo
- 发布服务与zookeeper的连接配置applicationProvider.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-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的服务搭建的更多相关文章
- 基于netty轻量的高性能分布式RPC服务框架forest<下篇>
基于netty轻量的高性能分布式RPC服务框架forest<上篇> 文章已经简单介绍了forest的快速入门,本文旨在介绍forest用户指南. 基本介绍 Forest是一套基于java开 ...
- 基于netty轻量的高性能分布式RPC服务框架forest<上篇>
工作几年,用过不不少RPC框架,也算是读过一些RPC源码.之前也撸过几次RPC框架,但是不断的被自己否定,最近终于又撸了一个,希望能够不断迭代出自己喜欢的样子. 顺便也记录一下撸RPC的过程,一来作为 ...
- 基于Spring Cloud和Netflix OSS构建微服务,Part 2
在上一篇文章中,我们已使用Spring Cloud和Netflix OSS中的核心组件,如Eureka.Ribbon和Zuul,部分实现了操作模型(operations model),允许单独部署的微 ...
- 基于HAProxy+Keepalived高可用负载均衡web服务的搭建
一 原理简介 1.HAProxyHAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web ...
- 基于Axis1.4的webservice接口开发(环境搭建)
基于Axis1.4的webservice接口开发(环境搭建) 一.环境搭建: 1.搜索关键字“Axis1.4”下载Axis1.4相关的jar包. 下载地址:http://download.csdn.n ...
- 基于RHCS的web双机热备集群搭建
基于RHCS的web双机热备集群搭建 RHCS集群执行原理及功能介绍 1. 分布式集群管理器(CMAN) Cluster Manager.简称CMAN.是一个分布式集群管理工具.它执行在集群的各个节 ...
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 三
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
- openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 二
openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstac ...
随机推荐
- react.js 给标识ref,获取内容
import React,{Component} from 'react' import ReactDOM from 'react-dom' class App extends Component{ ...
- ztree2.6给菜单增加title提示信息[转]
自定义数据格式的情况下(isSimpleData: true) 在setting中自定义一个属性如 remark:"remark", callback中调用函数 nodeCreat ...
- 兴奋剂检查(vijos 1426)
背景 北京奥运会开幕了,这是中国人的骄傲和自豪,中国健儿在运动场上已经创造了一个又一个辉煌,super pig也不例外……………… 描述 虽然兴奋剂是奥运会及其他重要比赛的禁药,是禁止服用的.但是运动 ...
- 关于HTML文件、JS文件、CSS文件
把JS和CSS脚本写在html里和写在独立文件里有什么区别? 1. 都写在html里是性能最优的方案. 2. 都写在html里是可维护性最差的方案. 3. 分开写在js.css.html是可维护性最有 ...
- 最短路——Dijkstra算法
模板 水模板ing #include <cstdio> #include <cstring> #include <algorithm> #include <i ...
- Linux下的lds链接脚本简介(一)
转载自:http://linux.chinaunix.net/techdoc/beginner/2009/08/12/1129972.shtml 一. 概论 每一个链接过程都由链接脚本(linker ...
- react-container-query
1.媒体查询 响应式组件 2.使用方法 (1)引入 import { ContainerQuery } from 'react-container-query'; (2)规定屏幕尺寸 /** * 媒体 ...
- 微信小程序之 ShoppingCart(购物车)
1.项目目录 2.逻辑层 group.js // pages/group/group.js Page({ /** * 页面的初始数据 */ data: { goodslist: [ { id: &qu ...
- poj 1426 Find The Multiple ( BFS+同余模定理)
Find The Multiple Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 18390 Accepted: 744 ...
- web.xml文件中各个配置的说明
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://w ...