Dubbo+zookeeper使用方法以及注意事项

Dubbo+zookeeper使用方法以及注意事项

最近在一个项目中想做一个数据库查询的服务,目的是将数据库查询这块从程序中脱离出来,形成一个公共的服务平台,大家都可以调用,经过考虑决定选用Dubbo+zookeeper这个经典的组合来实现,以下记录我事件中遇上的问题,希望大家可以借鉴,同时对自己也是一种备忘吧!

1、对应的包下载:

基本就是Spring的包+zookeeper的包+dubbo的包

生产部分配置如下

<?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="DBService_provider" />
     <!-- 使用zookeeper注册中心暴露服务地址 -->
     <dubbo:registry address="zookeeper://192.168.0.107:2181" />

<!-- 用dubbo协议在20880端口暴露服务 -->
     <dubbo:protocol name="dubbo" port="20881" />

<!-- 声明需要暴露的服务接口 -->
     <dubbo:service interface="com.moorgen.service.IBaseDaoService"   
         ref="IBaseDaoService" loadbalance="roundrobin" />
     <!-- 具体的实现bean -->
     <bean id="IBaseDaoService" class="com.moorgen.service.impl.BaseDaoServiceImpl" />

</beans>

注意事项:

<!-- 用dubbo协议在20880端口暴露服务 -->
<dubbo:protocol name="dubbo" port="20881" /> 一个zookeeper要想注册多个服务,改变port即可;

消费者对应的配置:

<?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="DB_consumer" />

<!-- 使用zookeeper注册中心暴露服务地址 -->
  
     <dubbo:registry address="zookeeper://192.168.0.107:2181" />

<dubbo:reference id="iBaseDaoService" interface="com.moorgen.service.IBaseDaoService"  timeout="2000" check="false" />

</beans>

注意:其中接口中对应的参数如果是类的话必须对应;如:IBaseDaoService.SelectByParam(URD urd); 其中两边的URD类的位置必须一样;

时间: 2024-10-25 22:54:28

Dubbo+zookeeper使用方法以及注意事项的相关文章

用dubbo+zookeeper+spring搭建一个简单的http接口程序

dubbo是一个分布式服务框架,是阿里巴巴开发的一个解决RPC远程调用优化的核心框架,包含负载均衡算法,能提高分布式系统的性能. zookeeper是hadoop的一个子项目,主要用来解决分布式系统的数据一致性.状态同步.服务集群管理.配置同步等一系列的问题.本文使用zookeeper作为dubbo的服务注册中心. 技术细节方面: dubbo:http://www.dubbo.io zookeeper:http://www.ibm.com/developerworks/cn/opensource

dubbo+zookeeper+dubbo管理控制台实践demo 【转】

1,安装并启动zookeeper注册服务,这里使用的是3.4.6版本. 下载解压后,在zookeeper-3.4.6/conf/下,默认是没有zoo.cfg,只有一个zoo_sample.cfg. CMD命令行进入zookeeper-3.4.6/bin/目录,直接运行zkServer.cmd会出错,提示找不到zoo.cfg文件.因此需要将zookeeper-3.4.6/conf/下zoo_sample.cfg拷贝一个zoo.cfg,配置数据存储路径dataDir=E://tmp/zookeepe

EOSPlatform+Dubbo+Zookeeper最佳实践 【转】

随着分布式服务框架的流行,许多公司都引入了业界流行的分布式服务框架,本文介绍如何使用EOSPlatform+Dubbo+Zookeeper实现分布式服务的开发与运行. 1     环境准备 1.1  环境选择 EOSPlatform 6.7.1 Zookeeper 3.4.5 Dubbo 2.5.3 Tomcat 5.5.27 1.2  搭建Zookeeper环境 下载zookeeper-3.4.5.tar.gz解压到自定义目录中,如下图: 打开conf目录,将文件zoo_sample.cfg重

微服务的一种开源实现方式——dubbo+zookeeper

微服务架构成了当下的技术热点,实现微服务是要付出很大成本的,但也许是因为微服务的优点太过于吸引人,以至于大部分开发者都将它当成未来的发展趋势. 微服务架构的演进过程 dubbo的用户手册中介绍了服务化架构的进化过程,如下图: 图一.服务化架构的演进过程 1.orm – 单一应用架构 一个高内聚版本,所有功能部署在一起.数据访问框架(orm)成为关键.这个架构很少被人使用,几乎接近灭绝了吧. 优点:成本低,适合功能少又简单 缺点:很多,比如无法适应高流量,二次开发难,部署成本高 2.mvc架构 -

一步步完成Maven+Spring+Dubbo+Zookeeper的整合示例

本文给出一个整合Maven+Spring+Dubbo+Zookeeper的示例,并且一步步给出完成步骤,并对其中可能遇到的问题进行解决~ Maven模块化 创建一个名为dubbo-demo的Maven工程,该工程包含三个模块 dubbo-demo-interface   (定义对外开放接口) dubbo-demo-provider   (接口实现) dubbo-demo-consumer (接口调用) dubbo-demo工程中的pom.xml文件如下: <project xmlns="h

dubbo+zookeeper+dubbo管理控制台实践demo

1,安装并启动zookeeper注册服务,这里使用的是3.4.6版本. 下载解压后,在zookeeper-3.4.6/conf/下,默认是没有zoo.cfg,只有一个zoo_sample.cfg. CMD命令行进入zookeeper-3.4.6/bin/目录,直接运行zkServer.cmd会出错,提示找不到zoo.cfg文件.因此需要将zookeeper-3.4.6/conf/下zoo_sample.cfg拷贝一个zoo.cfg,配置数据存储路径dataDir=E://tmp/zookeepe

Springboot 整合 Dubbo/ZooKeeper

本文提纲 一.为啥整合 Dubbo 实现 SOA 二.运行 springboot-dubbo-server 和 springboot-dubbo-client 工程 三.springboot-dubbo-server 和 springboot-dubbo-client 工程配置详解 一.为啥整合 Dubbo 实现 SOA Dubbo 不单单只是高性能的 RPC 调用框架,更是 SOA 服务治理的一种方案. 核心: 1. 远程通信,向本地调用一样调用远程方法. 2. 集群容错 3. 服务自动发现和

第一次搭建springboot+dubbo+zookeeper项目小结

第一次用IDEA搭建springboot+dubbo+zookeeper项目中碰到了一些问题,现在记录下来, 第一步:项目准备工作 工具IDEA,先下载安装zookeeper和dubbo   Zookeeper下载地址:https://zookeeper.apache.org/releases.html,我下载最新的release 3.5.7 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是

Failed to read schema document &#39;http://code.alibabatech.com/schema/dubbo/dubbo.xsd&#39;问题解决方法

或者报错: org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: nested exception is org.xml.sax.SAXParseException: cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'context:annotation-c