检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
使用重试功能 clientcontrol提供了重试功能,当目标业务方法执行报错时,会按照用户配置的策略重试目标业务方法,具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: rules:
自定义降级 clientcontrol提供了自定义降级的功能。当目标业务代码报错时,如果用户想要执行自定义的降级逻辑可以参考以下配置。具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: caches:
找不到createMultiZonClient的bean 问题描述 当使用缓存功能,并且缓存组件使用的redis时,报如图所示的异常。 图1 报错异常 解决方案 使用devspore-dcs连接redis。 devspore-dcs会默认创建一个bean名称为createMult
生成服务代码 使用说明 根据配置的业务模型,生成服务的基本代码。代码生成后,会提供一个压缩包,供您使用。关于代码结构的详细介绍,请参见服务开发框架详解。 操作步骤 参考编辑服务中操作,完成业务模型的配置。 在服务依赖中,单击“创建”。 输入变更日志描述信息,单击“创建”。 系统开始创建服务,并生成该服务的代码。
条件渲染 在页面开发中,可能需要根据某些条件来动态显示或隐藏页面中的内容,例如:如果您希望当用户已经登录的时候,显示“欢迎登录”的文字,未登录的时候,显示“请登录”的文字。 参考登录AstroPro界面中操作,登录AstroPro界面。 在左侧导航栏中,选择“前端开发平台 > 前端应用”。
clientcontrol中ttl和performanceTtl的具体含义是什么 Cache配置有两个ttl,一个ttl(可靠性缓存)和一个performanceTtl(性能缓存)。 存在误解这两个为是两个缓存,其实缓存只有一个。 实际给缓存设置的缓存过期时间为ttl配置,缓存存
clientcontrol注解不生效 问题描述 clientcontrol注解不生效。 解决方案 clientcontorl是依托于spring的aop来实现的。当注解不生效时,用户需要排查以下两个问题: 版本使用是否正确,如果用户使用的是jdk17、clientcontrol必
在左侧导航栏中,选择“后端开发平台 > 资产库 > 客户端流控策略”。 在顶部项目下拉框中选择对应项目或工作空间,即设置流控策略的作用范围。 选择对应项目,则流控策略的作用为指定项目,选择工作空间,则流控策略的作用为工作空间内所有项目。 非工作空间管理员仅可创建对应项目的流控策略,具体权
devspore-auth-oneaccess使用指南 devspore-auth-oneaccess使用概述 使用指南 配置说明 父主题: devspore-auth使用指南
缓存优先 clientcontrol提供了一种名为缓存优先的功能。当使用缓存优先功能时,在执行目标业务代码时,优先会查询缓存,如果缓存存在则返回缓存结果,如果缓存不存在则执行目标业务代码。 当使用缓存优先时clientcontrol的处理逻辑如下: 读取缓存,判断是否是性能缓存。
服务优先 clientcontrol提供了一种名为服务优先的功能。当使用服务优先功能时,在执行目标业务代码时,优先执行业务代码并返回,如果业务代码报错则去查询缓存并返回。具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control:
Pro实例版本。 编辑子域 参考登录AstroPro界面中操作,登录AstroPro界面。 在左侧导航栏中,选择“后端开发平台 > 应用管理 > 应用服务”。 在顶部下拉框中,选择子域所属的项目、应用和子域。 在应用服务列表中选择待操作的应用服务,单击“操作”列的“编辑”。 重新配置应用服务的基本信息。
自定义缓存key读取失败 问题描述 运行时报错com.huaweicloud.devspore.clientcontrol.core.ClientControlCacheComponent] [ERROR] - [Expression [xxxxx] @xx: ELxxxx]。 解决方案
redis缓存不存在的属性反序列化 问题描述 redis在存入的时候,如果对象中存在is开头的方法,但是又没有具体的属性。那么在存入的时候,会将auth转换为一个属性存入缓存当中,在反序列化的时候就会报反序列化失败。 public boolean isAuth(){ return
自定义降级方法不生效 问题描述 自定义降级方法不生效。 解决方案 请排查自定义降级方法的定义的限制。 方法列表需要和原方法一致,此外要额外添加一个Throwable的参数,放在参数列表的最后一个。 方法的返回值要和原方法保持一致。 方法的修饰类型要大于原方法。如:原方法是publ
组件纳管的依赖包和版本 组件纳管的依赖包 spring-boot-starter-huawei包含的依赖包(代码中pom可不引入相关依赖)。 表1 spring-boot-starter-huawei包含的依赖包 包名groupId:artifactId 备注 org.sprin
访问熔断状态的方法时报错异常 问题描述 运行时报错Request processing failed; nested exception is io.github.resilience4j.circuitbreaker.CallNotPermittedException: CircuitBreaker
熔断器打开,导致方法调用失败 问题描述 熔断器打开,导致方法调用失败。 解决方案 在没有使用自定义降级方法和缓存的时候,原方法如果调用失败会抛出方法原始出的错误。 如果使用了自定义降级方法。 熔断前:自定义降级方法中添加的最后一个异常的参数封装的就是原方法的异常。 熔断后:最后一个异常参数会固定抛出“io
Pro实例版本。 关联服务 参考登录AstroPro界面中操作,登录AstroPro界面。 在左侧导航栏中,选择“后端开发平台 > 应用管理 > 应用服务”。 在顶部下拉框中,选择子域所属的项目、应用和子域。 单击“关联服务”,在弹框中选择需关联的服务及版本。 当创建子域是开启单元化配置,则关联
配置说明 表1 参数配置说明 参数名称 是否必选 功能 devspore.auth.in-header false token是否在header中,默认true。 devspore.auth.token-name false token在header中的参数名,inHeader设