dubbo学习笔记(java+springboot)

首先,这是我个人学习的笔记,可能有些地方理解的不正确,发现请指出,谢谢

  • dubbo是干啥的?
    • 通常我们在调用一个接口的时候,是调用当前接口的实现类;dubbo可以让我们像调用接口一样,调用外部服务器的实现;
  • dubbo使用流程:

  • 1:安装zookeeper

  • 这里zookeeper的作用是让dubbo将服务注册;
  • zookeeper下载地址:https://archive.apache.org/dist/zookeeper/
  • 我使用的是3.4.11,在windows下安装的;
  • 在conf文件下,将zoo_sample.cfg复制一份,改名为zoo.cfg,打开,里面有个dataDir,表示log日志地址,clinePort表示端口号;
  • 在bin下,有个zkService.cmd,是启动服务端,可以打开 zkCli.cmd测试启动是否成功,输入get / 会看到4个0x0的值,就表示启动成功了
  • 2:安装控制台

  • 地址: https://github.com/apache/dubbo-admin/tree/master ,下载完成后,进入dubbo-admin文件下,src-main-resources-application.properties,修改dubbo.registry.address=zookeeper://127.0.0.1:2181(对应上文zoo.cfg文件里的设置)
  • 后退至pom.xml处,打开控制台,输入 mvn clean package打成jar包,在target里面找到,打开控制台,输入 java -jar dubbo-admin-…(table键补齐) 来运行这个jar包,启动完成之后会发现,端口是7001,打开ie,输入 localhost:7001,root root,如果看到页面,控制台就安装完成了
  • 3:应用到项目

  • 创建两个平时使用的boot项目,1:test-dubbo-service 2:test-dubbo-controller,导入jar包
		<dependency>
			<groupId>com.alibaba.boot</groupId>
			<artifactId>dubbo-spring-boot-starter</artifactId>
			<version>0.2.0</version>
		</dependency>
  • 在service项目中,创建service包和impl包,写一个接口和一个实现类,在实现类上面加入两个@Service注解,一个是dubbo提供的,一个是spring提供的,如果看着不习惯,可以将spring提供的改为@Component
    application.properties配置文件中增加以下设置
    dubbo.application.name=test-dubbo-service
    dubbo.registry.address=zookeeper://127.0.0.7:2181
    dubbo.protocol.name=dubbo
    dubbo.protocol.port=20190(自己随意设置,dubbo使用的端口号)
    dubbo.scan.base-packages=com.xxx.service
  • 在controller项目中,创建controller包,和service包(不创建impl包),接口名要和service项目的接口一样;
  • 在controller包 创建平时 创建的controller接口,平时我们使用@Autowired来让spring帮我们创建service对象,这里我们将@Autowired改为dubbo为我们提供给的@Reference;
  • application.properties配置文件中增加以下设置
    dubbo.application.name=test-dubbo-controller
    dubbo.registry.address=zookeeper://127.0.0.7:2181
    dubbo.scan.base-packages=com.xxx.controller
  • 启动service项目,启动controller项目,访问试试吧~

下面是监控中心安装(上面已经可以使用dubbo了,这里是监控每个接口的调用信息,运维使用)

  • 找到我们之前在github下载的项目,dubbo-admin-master文件下的dubbo-monitor-simple文件下,含有pom.xml的文件中,打开控制台,mvn clean package,在target中找到一个解压包,tar.gz后缀的,解压,会看到一个dubbo-monitor-simple-2.0.0文件,里面有个conf可以修改配置,assembly.bin下的start.bat启动,打开ie输入localhost:8080有页面则成功了,上面的一行标签可以点一下看看
  • 在配置中修改连接方式
    dubbo.monitor.protocol=registry //表示从注册中心发现监控中心的地址,否则直连监控中心
    dubbo.monitor.address=127.0.0.1:65432 //直接监控中心

下面是一些其他配置,可以修改dubbo的一些策略

  • dubbo.consumer.check=false //消费方启动时,会自动检查服务方是否启动,这里设置为不检查
  • dubbo.consumer.timeout=2000 //dubbo默认1秒超时,这个可以设置全局超时时间2秒
  • dubbo.consumer.retries=3 //当服务调用失败了,最多重试3次,注:添加到数据库信息 性质的 接口不适合!!!
  • @ImportResource(locations = “classpath:dubboConfig.xml”)//可以用xml配置dubbo
  • @EnableDubbo//可以在启动类Application中加入这个注解,不写dubbo.scan.base-packages配置
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值