zookeeper结合dubbo实现分布式接口调用
来源:互联网 发布:淘宝店铺宣传语 编辑:程序博客网 时间:2024/05/14 19:54
一、Zookeeper是一个分布式的,开放源码的分布式应用程序协调服务, 目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
1)官网下载zookeeper解压到指定文件夹下并修改配置文件
tickTime=2000
initLimit=10
syncLimit=5
clientPort=2181
dataDir=F:\zookeeper-3.5.2-alpha\data\zookeeper
dataLogDir=F:\zookeeper-3.5.2-alpha\logs\zookeeper
windows下双击zkServer.cmd启动服务
2)集群配置也很简单
tickTime=2000
dataDir=/home/hadoop/storage/zookeeper
clientPort=2181
initLimit=5
syncLimit=2
server.1=slave-01:2888:3888
server.2=slave-02:2888:3888
server.3=slave-03:2888:3888
二 dubbo admin管理界面安装
1 下载dubbo-admin-2.8.4.war 放到新的tomcat webapp下 修改dubbo.property文件指定zookeeper地址以及密码,两个都是密码,用户名分别为root,guest,dubbo.registry.address=zookeeper://127.0.0.1:2181
dubbo.admin.root.password=waylon
dubbo.admin.guest.password=Waylon
三 Dubbo配置
1 生产者端配置方式(单机)
<dubbo:application name="${app.name}" owner="${app.owner}" /> <dubbo:registry address="zookeeper://127.0.0.1:2181" /> <dubbo:protocol name="${dubbo.protocol.name}" host="127.0.0.1" port="20880" threads="${dubbo.provider.threads}"/> <dubbo:monitor protocol="registry" /> <dubbo:provider timeout="${dubbo.timeout}" executes="200" cluster="failfast"/> <dubbo:consumer check="false" />
<!—暴露接口 -->
<dubbo:service interface="com.zwdai.search.service.IIndexService" ref="indexServiceImpl" version="2.5.3" /> <dubbo:service interface="com.zwdai.search.service.ISearchService" ref="searchServiceImpl" version="2.5.3" /> <bean id="indexServiceImpl" class="com.zwdai.search.impl.IndexServiceImpl" /> <bean id="searchServiceImpl" class="com.zwdai.search.impl.SearchServiceImpl" />
启动过程中可能遇到异常Caused by: java.net.BindException: Address already in use: bind此异常不影响不同应用之间的通信,可以忽略。
2 消费者端调用zookeeper需要做的工作
1) 配置maven依赖,把需要的service以jar的形式添加到maven依赖下
配置消费者需要的接口
消费方应用名,用于计算依赖关系,不是匹配条件,不要与提供方一样 - <dubbo:application name="admin-consumer2"/>
<dubbo:registry id="qd_registry" protocol="zookeeper" address="${dubbo.zk}" />
<!-- 生成远程服务代理,可以和本地bean一样使用demoService
<dubbo:reference id="ficoService" interface="com.zwdai.fico.api.FicoService" />
使用dubbo协议 注册中心暴露服务地址 <dubbo:registry id="wh_registry" protocol="dubbo" address="zookeeper://172.16.16.28:2181"/>
生成远程服务代理,可以像使用本地bean一样使用demoService
<dubbo:reference id="searchService" interface="com.zwdai.search.service.ISearchService" version="2.5.3" /> <dubbo:reference id="indexService" interface="com.zwdai.search.service.IIndexService" version="2.5.3" />
<!-- 注解扫描 -->
<dubbo:annotation package="com.zwdai.webadmin.contorller" />
上述配置通过id的区分可以配置多个zookeeper中心
注意事项
1发布接口可以通过maven的 clean deploy即可把相应的model上传至私服
2如果项目无法访问可以检查一下啊tomcat moduel是否修改
- zookeeper结合dubbo实现分布式接口调用
- dubbo+zookeeper实现分布式调用
- dubbo+zookeeper 简单实现远程接口调用
- dubbo和zookeeper,spring结合实现服务
- 用Dubbo+zookeeper 调用java接口程序
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- dubbo实例 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- 【Dubbo实战】 Dubbo+Zookeeper+Spring整合应用篇-Dubbo基于Zookeeper实现分布式服务(二)
- dubbo+zookeeper实现服务远程调用
- dubbo+zookeeper实现服务远程调用
- 分布式dubbo + zookeeper
- Jenkins+Jmeter+Ant自动化集成环境
- MZX大佬授课のDAY2
- 非法参数异常- DrawerLayout 必须与 MeasureSpec.EXACTLY 测量
- 培训:3天带你快速上手Kubernetes
- LUA 打印的性能开销
- zookeeper结合dubbo实现分布式接口调用
- java语言程序设计 第十二章 (12.23、12.24、12.25、12.26)
- java 小程序 商城 源码
- XML关键知识点
- iOS 11开发教程(九)iOS11数据线连接真机测试
- javabean
- 3D数学 学习笔记(5) 三角网格
- APP性能优化之过度绘制【项目实践】
- 前端开发之走进Vue.js