SpringBoot整合Dubbo zookeeper过程解析
这篇文章主要介绍了SpringBoot整合Dubbozookeeper过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
dockerpullzookeeper
dockerrun--namezk01-p2181:2181--restartalways-d2e30cac00aca
表明zookeeper已成功启动
Zookeeper和Dubbo•ZooKeeperZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
DubboDubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。
从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。
启动类
@SpringBootApplication publicclassConsumerManagerApplication{ publicstaticvoidmain(String[]args){ SpringApplication.run(ConsumerManagerApplication.class,args); } }
controller
@RestController publicclassManagerController{ @Reference ManagerServicemanagerService; @RequestMapping("/hello") publicStringhello(){ returnmanagerService.hello(); } }
service(只需要跟服务类的接口一致就行,包名也要一致)
publicinterfaceManagerService{ publicStringhello(); }
application.properties
dubbo.application.name=consumer-manager dubbo.registry.address=zookeeper://192.168.0.106:2181 server.port=8081
服务端(provider)配置:
启动类
@SpringBootApplication publicclassProviderManagerApplication{ publicstaticvoidmain(String[]args){ SpringApplication.run(ProviderManagerApplication.class,args); } }
service接口和实现类
publicinterfaceManagerService{ publicStringhello(); } @Service publicclassManagerServiceImplimplementsManagerService{ @Override publicStringhello(){ System.out.println("客户端请求进来了!"); return"xixisuccess!!!"; } }
application.properties
dubbo.application.name=provider-manager dubbo.registry.address=zookeeper://192.168.0.106:2181 dubbo.scan.base-packages=com.hourui
浏览器访问:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。