本篇内容介绍了“SpringBoot中如何整合Dubbo zookeeper”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
docker pull zookeeper
docker run --name zk01 -p 2181:2181 --restart always -d 2e30cac00aca
表明zookeeper已成功启动
Zookeeper和Dubbo• ZooKeeperZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
DubboDubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合)。
从服务模型的角度来看,Dubbo采用的是一种非常简单的模型,要么是提供方提供服务,要么是消费方消费服务,所以基于这一点可以抽象出服务提供方(Provider)和服务消费方(Consumer)两个角色。
客户端(consumer)配置:
启动类
@SpringBootApplication public class ConsumerManagerApplication { public static void main(String[] args) { SpringApplication.run(ConsumerManagerApplication.class, args); } }
controller
@RestController public class ManagerController { @Reference ManagerService managerService; @RequestMapping("/hello") public String hello() { return managerService.hello(); } }
service(只需要跟服务类的接口一致就行,包名也要一致)
public interface ManagerService { public String hello(); }
application.properties
dubbo.application.name=consumer-manager dubbo.registry.address=zookeeper://192.168.0.106:2181 server.port=8081
服务端(provider)配置:
启动类
@SpringBootApplication public class ProviderManagerApplication { public static void main(String[] args) { SpringApplication.run(ProviderManagerApplication.class, args); } }
service接口和实现类
public interface ManagerService { public String hello(); } @Service public class ManagerServiceImpl implements ManagerService { @Override public String hello() { System.out.println("客户端请求进来了!"); return "xixi success !!!"; } }
application.properties
dubbo.application.name=provider-manager dubbo.registry.address=zookeeper://192.168.0.106:2181 dubbo.scan.base-packages=com.hourui
浏览器访问:
“SpringBoot中如何整合Dubbo zookeeper”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。