dubbo2.6.0服务注册与发现,降级,容错

服务注册与发现

安装注册中心

到zookeeper下载zookeeper-3.4.14.tar.gz包,解压

到bin文件夹里找到zkServer.cmd,点击运行会直接闪退,在地址栏里输入cmd,

然后输入zkServer.cmd,如图报找不到zoo.cfg。

到conf文件夹里复制并取名为zoo.cfg

打开zoo.cfg配置,将dataDir地址改为  ../data ,意思是将数据保存在上一层新建的data文件夹里,默认是2181端口。

然后再cmd启动zkServer.cmd即可,如图成功启动

cmd打开bin文件夹下的zkCli.cmd测试下,将他作为注册中心使用

安装监控中心dubbo-admin,此为管理控制台

下载dubbo-admin GitHub - apache/dubbo-admin at master

另已备份于百度云盘。

dubbo从2.6开始,dubbo admin被单独分出来

1.解压找到dubbo-admin里的application.properties

配置的是访问端口以及zookeeper地址

pom.xml为jar包方式,与springboot结合。

2、Maven打成jar包

在该目录中cmd命令mvn clean package

第一次打包时间较长,如下图打包成功后dubbo-admin会多出一个target。

3.打开target,

将该jar包复制到dubbo下,然后cmd 输入 java -jar dubbo…,前提把zookeeper-server服务端打开。

先打开zookeeper服务端,

然后启动dubbo

如图dubbo监控中心启动成功

密码与用户名都为root

如图登陆成功进入

关闭dubbo服务

  1. 另起一个cmd命令窗口,找到dubbo配置的那个端口号所对应的进程。netstat -ano | findstr 7001      taskkill /f /t /PID 8664

总结springboot+dubbo配置

第一步导入dubbo的jar包

第二步配置好yml文件

第三步如果要暴露服务要用dubbo的@Service注解,如果是消费服务要用@Reference引入服务接口。

Dubbo.properties覆盖策略

启动时检查

如果只启动了消费者,就会报没有可用的提供者异常,关闭检查后只有消费者调用该服务时才会进行检查该服务是否可用。

超时时间与重试次数

另外可以设置服务调用超时时间,dubbo默认是1000毫秒,可以明确指定某个方法,接口的超时时间,一旦过了就会报错。
重试次数retries=,当服务超时断开连接后设置重新次数,如果有多台服务器,第一台没有调用成功,他会重试连接第二台知道成功为止。

多版本,也称之为灰度发布

本地存根,应该放在公共接口包里

Zookeeper宕机与dubbo直连

服务降级

Dubbo负载均衡机制(比如配置权重,hashid),集群容错机制、服务降级面试了解下
服务降级:牺牲某个非核心业务的资源来保证核心业务占用更多资源来流畅运行

操作如下,屏蔽操作是针对消费者来做的。直接操作dubbo控制台即可。

服务容错

提供者

首先导入hystrix  jar包  
<!-- https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-starter-netflix-hystrix -->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
    <version>2.2.4.RELEASE</version>
</dependency>
然后启动类上添加@EnableHystrix  //开启服务容错

然后对某个方法使用注解@HystrixCommand来允许容错。

消费者

然后消费者的启动类也要开启注解,也要导入jar包即可。
然后消费者远程调用服务代码可能会出现异常,所以使用下图写法,意思是在出错的时候回去调用该类下名为Hello的方法。

随便再写一个Hello的方法即可。

dubbo底层使用了netty.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值