检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
@Extension介绍 devspore-horizon是devspore提供的对metaBO(以及对应的RO)操作前鉴权、认证,metaBO变动后消息发送、审计等功能的组件。配置horizon后,generator生成的项目的repository中相关操作上会带有@Extension注解。
devspore-horizon介绍 扩展拦截功能依赖devspore-horizon组件实现。devspore-horizon是DevSpore开发框架提供的一种插件机制,用户可以在请求被处理前(Entry)和应答发送前(Exit)调用DevSpore预置的插件,也可以使用自己
接入指南 pom文件添加依赖。 <dependency> <groupId>com.huaweicloud.devspore</groupId> <artifactId>devspore-clientcontrol</artifactId> <versio
用户自定义认证使用 工作原理 引入devspore-auth-starter依赖后,会在SDK内自动注册认证Filter:AuthAuthenticationFilter。 调用业务接口时会自动执行已注册的认证Filter,AuthAuthenticationFilter.doF
常见问题 问题描述 使用devspore-probe并开启上报监控数据到AOM后频繁打印日志:post metrics to aom success。 解决方案 在项目中添加配置参数:logging.level.com.huawei.devspore.probe=error,使得
用户自定义拦截插件使用 Entry插件 继承抽象类Processor,实现doProcess接口,可定义多个插件。 插件均需注册为bean。 import com.huawei.devspore.horizon.DataEvent; import com.huawei.devspore
devspore-security使用概述 devspore-security安全组件内置了明文加密、参数校验等安全功能,相比原有组件自动化程度更高,集成方式更简单。 表1 安全功能 名称 描述 配置自动加解密 自动对配置文件的字段加解密,通过(NeedEnc)(NeedDec)标注。
spring-boot-huawei使用概述 开发简介 本SDK旨在简化基于spring-boot的项目开发时,对于开发环境依赖jar包的管理问题。 开发能力要求 您需具备以下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 基础开发环境准备 安装的工具
使用超时功能 clientcontrol提供了超时功能,当目标业务方法执行超过执行时间后,会终止代码的执行,具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: biz-pool: prioritized:
使用重试功能 clientcontrol提供了重试功能,当目标业务方法执行报错时,会按照用户配置的策略重试目标业务方法,具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: rules:
开启自定义鉴权功能 自定义鉴权功能在微服务架构、API管理、企业内部系统集成等方面发挥着重要作用,它提供了灵活性和可扩展性,以满足不同业务场景下的安全需求。 开启自定义鉴权功能前,请确保依赖服务的“是否启用扩展拦截”按钮已启用。 图1 开启“是否启用扩展拦截”配置 登录Astro
AuthSubject对象参数说明 参数名称 数据类型 描述 tenantId String 根据用户所在的租户传值: 对于非多租应用(MetaService中tenantModel为空),允许为空。 如果为多租应用(MetaService中tenantModel值为TENANT或者TENANT_PROJECT),则传入tenantId。
devspore-probe使用概述 devspore-probe主要是用来对微服务进行监控指标暴露的功能组件,devspore-probe对Micrometer做二次封装,借助自动配置,默认提供多种中间件的兼容,同时支持指标扩展,业务可根据自身需要扩展指标。 devspore-
devspore-clientcontrol使用概述 本文主要描述如何通过devspore-clientcontrol在代码中使用超时、重试、熔断和降级的功能。 开发能力要求 您需具备以下开发能力: 熟悉Java语言,并有Java程序开发经验。 熟悉Maven。 基础开发环境准备
clientcontrol注解不生效 问题描述 clientcontrol注解不生效。 解决方案 clientcontorl是依托于spring的aop来实现的。当注解不生效时,用户需要排查以下两个问题: 版本使用是否正确,如果用户使用的是jdk17、clientcontrol必
使用spring-boot-huawei组件 spring-boot-huawei是一个管理jar包的SDK,主要帮助用户管理一些常用sdk的依赖版本。 使用方式 当前spring-boot-huawei各功能模块以jar包的方式提供起始依赖,自动加入实现该模块功能的jar依赖,
无法获取本地线程变量 问题描述 ClientControl的超时功能是搭配线程池使用的,所以当使用本地线程变量的时候会导致无法获取线程变量的问题。 解决方案 这种情况一般推荐使用远程调用自带的超时控制,将ClientControl的超时功能关闭。 提前获取需要的信息,传入加了@ClientControl注解的方法中。
devspore-auth自定义token解析认证 模块依赖设计图 图1 devspore-auth插件依赖 图2 模块依赖图 开发环境准备 需提前安装的工具,包括JDK、Maven、Eclipse和IDEA,配置对应的环境变量,确保本地开发环境可用。 工作原理 引入devspo
缓存优先 clientcontrol提供了一种名为缓存优先的功能。当使用缓存优先功能时,在执行目标业务代码时,优先会查询缓存,如果缓存存在则返回缓存结果,如果缓存不存在则执行目标业务代码。 当使用缓存优先时clientcontrol的处理逻辑如下: 读取缓存,判断是否是性能缓存。
服务优先 clientcontrol提供了一种名为服务优先的功能。当使用服务优先功能时,在执行目标业务代码时,优先执行业务代码并返回,如果业务代码报错则去查询缓存并返回。具体使用方式如下: pom文件添加依赖。 配置文件,参考下面配置样例。 devspore: client-control: