SpringBoot整合Dubbo生产实践

为什么写这篇文章

逛了一圈博客,发现SpringBoot整合Dubbo的文章非常之多,但是很多都是照搬官网的模式,更有甚者是直接复制的官网水了一篇文章,可以说对初学者毫无帮助,还误导初学者的方向,并没有真正的落地,官网提供的demo确实只能用于学习,并不能用于实战,毕竟实战不会把服务端和客户端写在同一个工程。官网其实想表达Dubbo的使用方式是:一个微服务下应该包含至少两个模块,一个接口模块,一个实现模块,接口模块暴露给客户端使用。这也就是官网说的接口模块是交互的桥梁。

什么是Dubbo?

Dubbo是阿里开源的一款基于Netty的高性能RPC框架,经历多年的发展,已经在阿里内部全面落地,并在各行各业生根发芽,目前已成为Apache顶级项目。

为什么使用Dubbo?

Dubbo的性能已经在阿里的各项高并发场景下经过检验,并且提供了功能完善的服务治理平台,生态也非常完善,采用RPC进行服务调用,非常适合内部服务的通信。

与SpringCloud相比有如下优势:

  1. 采用RPC调用,调用远程方法像调用本地方法一样简单易用。SpringCloud采用http调用,用法较Dubbo稍微复杂。
  2. 在阿里全面落地,经历实战检验,非常稳定。

生产实践

熟悉Spring Cloud的同学,我们在不考虑服务治理,服务熔断,配置中心的场景下,仅服务端,客户端,注册中心就能搭建一个最简单的微服务体系。

  • 搭建注册中心

Dubbo支持Nacos和Zookeeper作为注册中心,这里我们采用各位同学使用最多的Zookeeper作为注册中心。我们开始搭建zookeeper。

  1. 下载zookeeper(建议各位同学不要直接下载最新版,最新版可能解决了很多问题,但是也可能带来更多的问题,最重要的是最新版的可能与其他组件不兼容,导致出现一些莫名其妙的问题

下载地址:https://archive.apache.org/dist/zookeeper/

我们以windows下的zookeeper-3.6.3为例。下载完成后解压。

image.png

image.png

image.png

我们编辑zoo.cfg文件,并将dataDir改成我们自定义目录,我这边则设置为:
E:\zookeeper\apache-zookeeper-3.6.3-bin\data。这里各位同学应该还看到一个配置就是clientPort,这也就是配置zookeeper启动的端口,这个端口也支持自定义,默认是2181,只要不和当前主机已经被占用的端口冲突即可。

做完这一切之后我们使用zkServer.cmd进行启动:

image.png

点击之后我们会看到启动成功的日志:

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

咖啡攻城狮Alex

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值