前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >dubbo学习实践(4)之Springboot整合Dubbo及Hystrix服务熔断降级

dubbo学习实践(4)之Springboot整合Dubbo及Hystrix服务熔断降级

作者头像
冬夜先生
修改2021-10-13 17:57:02
5540
修改2021-10-13 17:57:02
举报
文章被收录于专栏:csicocsico

1. springboot整合dubbo

  • 在provider端,添加maven引入,修改pom.xml文件 引入springboot,版本:2.3.2.RELEASE,dubbo(org.apache.dubbo)版本:2.7.8,服务注册中心采用consul,添加consul注册支持
image
image
image
image

添加org.apache.curator包引入:

image
image
  • 在程序主入口处,添加配置文件扫描路径及启用dubbo
image
image

配置类:DubboConfiguration

image
image

里面包含应用信息,注册中心配置及应用服务协议定义 在Annotation目录下,定义服务接口定义IUserService及服务实现UserServiceImp

image
image
image
image
  • consumer端,同样引入springboot运行程序,pom文件的内容与provider端一样 程序主入口如下:
image
image

定义一个服务接口IUserOperateService与实现UserOperateService,用来调用provider端提供的服务

image
image
image
image

注意,dubbo的注解都有所变化,见红圈处

  • 运行provider与consumer端,可以运行成功,springboot整合dubbo完成

2. dubbo集成hystrix框架

image
image
  • Dubbo服务降级
image
image
  • Hystrix Hystrix 旨在通过控制那些访问远程系统、服务和第三方库的节点,从而对延迟和故障提供更强大的容错能力。Hystrix具备拥有回退机制和断路器功能的线程和信号隔离,请求缓存和请求打包,以及监控和配置等功能。 在provider项目中,添加Hystrix依赖 <!--服务降级服务容错 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-hystrix</artifactId> <version>2.2.5.RELEASE</version> </dependency>
image
image

在项目中,maven添加web引用,否则provider会自动退出

image
image

在provider启动端,添加Hytrix服务熔断启用注解@EnableHystrix

image
image

在Provider端,添加UserServiceImp和IUserService服务定义,验证服务熔断

image
image

定义为DubboService,添加Hystrix注解,定义熔断条件,超时时间为2s

  • Consumer端Hystrix配置 主程序,添加配置@EnableHystrix
image
image

@EnableDubbo(scanBasePackages = "com.dubbo.consumer.Annotation"),扫描dubbo相关配置文件定义类 新建UserOperateService和IUserOperateService操作来,用来远程调用userservice服务

image
image

定义一个Controller,进行熔断测试

image
image
image
image

失败(超时)调用:

image
image

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. springboot整合dubbo
  • 2. dubbo集成hystrix框架
相关产品与服务
微服务引擎 TSE
微服务引擎(Tencent Cloud Service Engine)提供开箱即用的云上全场景微服务解决方案。支持开源增强的云原生注册配置中心(Zookeeper、Nacos 和 Apollo),北极星网格(腾讯自研并开源的 PolarisMesh)、云原生 API 网关(Kong)以及微服务应用托管的弹性微服务平台。微服务引擎完全兼容开源版本的使用方式,在功能、可用性和可运维性等多个方面进行增强。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档