检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
参数配置说明 表1 参数配置说明 参数名称 是否必选 参数类型 取值范围 描述 bizPool 否 ThreadPoolConfig 参考表2。 线程池配置。 caches 否 Map of CacheConfig key为userdefine1,userdefine2......
日志配置 spring-boot-starter-huawei中默认使用slf4j作为日志门面,log4j2作为日志实现框架。 当项目中的依赖可能存在有关logback日志框架的时候需要将其排除,否则可能会有spring-boot-starter-huawei中配置的slf4j(使用
devspore-clientcontrol使用概述 本文主要描述如何通过devspore-clientcontrol在代码中使用超时、重试、熔断和降级的功能。 开发能力要求 您需具备以下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 基础开发环境准备
使用超时功能 clientcontrol提供了超时功能,当目标业务方法执行超过执行时间后,会终止代码的执行,具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: biz-pool: prioritized
使用重试功能 clientcontrol提供了重试功能,当目标业务方法执行报错时,会按照用户配置的策略重试目标业务方法,具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: rules:
用户自定义鉴权使用 devspore提供鉴权插件接口,用户只需实现对应鉴权接口即可。 自定义鉴权插件 继承抽象类Processor,实现doProcess接口,可定义多个插件。 插件均需注册为bean。 import com.huawei.devspore.plugin.spi.authorization.AuthObject
使用熔断降级功能 缓存优先 服务优先 自定义降级 父主题: 使用场景
devspore-probe使用概述 devspore-probe主要是用来对微服务进行监控指标暴露的功能组件,devspore-probe对Micrometer做二次封装,借助自动配置,默认提供多种中间件的兼容,同时支持指标扩展,业务可根据自身需要扩展指标。 devspore-probe
devspore-auth-oneaccess使用指南 devspore-auth-oneaccess使用概述 使用指南 配置说明 父主题: devspore-auth使用指南
devspore-auth自定义token解析认证 模块依赖设计图 图1 devspore-auth插件依赖 图2 模块依赖图 开发环境准备 需提前安装的工具,包括JDK、Maven、Eclipse和IDEA,配置对应的环境变量,确保本地开发环境可用。 工作原理 引入devspore-auth-starter
缓存优先 clientcontrol提供了一种名为缓存优先的功能。当使用缓存优先功能时,在执行目标业务代码时,优先会查询缓存,如果缓存存在则返回缓存结果,如果缓存不存在则执行目标业务代码。 当使用缓存优先时clientcontrol的处理逻辑如下: 读取缓存,判断是否是性能缓存。
服务优先 clientcontrol提供了一种名为服务优先的功能。当使用服务优先功能时,在执行目标业务代码时,优先执行业务代码并返回,如果业务代码报错则去查询缓存并返回。具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control
监控数据自动上报AOM平台 使用场景 devspore-probe支持将微服务中的监控指标及数据自动上报到AOM平台,用户可在AOM平台上通过指标名称、标签等过滤并分析监控数据。 相关概念 应用运维管理(Application Operations Management),简称AOM
自定义缓存key读取失败 问题描述 运行时报错com.huaweicloud.devspore.clientcontrol.core.ClientControlCacheComponent] [ERROR] - [Expression [xxxxx] @xx: ELxxxx]。 解决方案
使用spring-boot-starter-huawei组件 spring-boot-starter-huawei组件具备开发一个基本的基于spring-boot的web项目的基本依赖,使用时只需将该组件的坐标添加到工程的pom文件中即可。 使用方式 直接作为dependency依赖引入
clientcontrol注解不生效 问题描述 clientcontrol注解不生效。 解决方案 clientcontorl是依托于spring的aop来实现的。当注解不生效时,用户需要排查以下两个问题: 版本使用是否正确,如果用户使用的是jdk17、clientcontrol必须使用
使用spring-boot-huawei组件 spring-boot-huawei是一个管理jar包的SDK,主要帮助用户管理一些常用sdk的依赖版本。 使用方式 当前spring-boot-huawei各功能模块以jar包的方式提供起始依赖,自动加入实现该模块功能的jar依赖,使用时直接在项目的
访问熔断状态的方法时报错异常 问题描述 运行时报错Request processing failed; nested exception is io.github.resilience4j.circuitbreaker.CallNotPermittedException: CircuitBreaker
熔断器打开,导致方法调用失败 问题描述 熔断器打开,导致方法调用失败。 解决方案 在没有使用自定义降级方法和缓存的时候,原方法如果调用失败会抛出方法原始出的错误。 如果使用了自定义降级方法。 熔断前:自定义降级方法中添加的最后一个异常的参数封装的就是原方法的异常。 熔断后:最后一个异常参数会固定抛出
无法获取本地线程变量 问题描述 ClientControl的超时功能是搭配线程池使用的,所以当使用本地线程变量的时候会导致无法获取线程变量的问题。 解决方案 这种情况一般推荐使用远程调用自带的超时控制,将ClientControl的超时功能关闭。 提前获取需要的信息,传入加了@ClientControl